summaryrefslogtreecommitdiff
path: root/language/japanese/japanese-otf-uptex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/japanese/japanese-otf-uptex
Initial commit
Diffstat (limited to 'language/japanese/japanese-otf-uptex')
-rw-r--r--language/japanese/japanese-otf-uptex/00otf-uptex.txt384
-rw-r--r--language/japanese/japanese-otf-uptex/COPYRIGHT26
-rw-r--r--language/japanese/japanese-otf-uptex/README32
-rw-r--r--language/japanese/japanese-otf-uptex/basepl/ubase-h.pl192
-rw-r--r--language/japanese/japanese-otf-uptex/basepl/ubase-v.pl156
-rw-r--r--language/japanese/japanese-otf-uptex/basepl/ubrsg-h.pl167
-rw-r--r--language/japanese/japanese-otf-uptex/basepl/ubrsg-v.pl142
-rw-r--r--language/japanese/japanese-otf-uptex/script/CheckDVICode.pm284
-rw-r--r--language/japanese/japanese-otf-uptex/script/MakeSPList.pm71
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/script/mktfm_sp.pl99
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/script/mkutf32list.pl162
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/script/mkutfvf_sp.pl166
-rw-r--r--language/japanese/japanese-otf-uptex/script/sp_list_c.txt17
-rw-r--r--language/japanese/japanese-otf-uptex/script/sp_list_j.txt75
-rw-r--r--language/japanese/japanese-otf-uptex/script/sp_list_k.txt14
-rw-r--r--language/japanese/japanese-otf-uptex/script/sp_list_t.txt204
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/script/umkpkana.pl601
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/script/umkvpkana.pl568
-rw-r--r--language/japanese/japanese-otf-uptex/sty/mlutf.sty58
-rw-r--r--language/japanese/japanese-otf-uptex/sty/otf.sty578
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/Makefile192
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/era.tex111
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/exclam.tex133
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/otfscale.tex69
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/paren0.tex45
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/punct0.tex31
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/punctuation.tex181
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/sp_cns_utf.tex204
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/sp_gb_utf.tex17
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_text.tex75
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_utf.tex75
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/sp_kr_utf.tex14
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/uotf-sp-utf8.tex313
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex291
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/uotftest.tex191
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/upbrsgtest.tex293
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/upjis2004.tex158
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/upkanatest1.tex103
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/upkanatest2.tex75
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-h.tfmbin0 -> 952 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-v.tfmbin0 -> 660 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothbn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothbn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgotheb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgotheb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothebn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothebn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpgothrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpmgothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpmgothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminbn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminbn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminl-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminl-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminln-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminln-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upexpminrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothb-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothb-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothbn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothbn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgotheb-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgotheb-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothebn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothebn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothr-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothr-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothrn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphgothrn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphmgothr-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphmgothr-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphmgothrn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphmgothrn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminb-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminb-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminbn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminbn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminl-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminl-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminln-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminln-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminr-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminr-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminrn-h.tfmbin0 -> 432 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uphminrn-v.tfmbin0 -> 108 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminbn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminbn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminl-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminl-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminln-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminln-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminrn-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/upnmlminrn-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygothb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygothb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygotheb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygotheb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubygothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubymgothr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubymgothr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminb-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminb-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminl-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminl-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminr-h.tfmbin0 -> 868 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/uprubyminr-v.tfmbin0 -> 588 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcgro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfcmro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrw-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrw-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgry-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgry-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfgrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbo-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbo-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbu-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbu-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgby-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgby-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgbz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgej-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgej-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgek-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgek-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgel-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgel-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgem-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgem-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgen-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgen-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeo-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeo-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgep-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgep-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjger-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjger-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjges-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjges-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjget-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjget-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeu-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgeu-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgev-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgev-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgex-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgex-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgey-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgey-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgez-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgez-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgry-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgry-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjgrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbo-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbo-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbu-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbu-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmby-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmby-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmbz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgry-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgry-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmgrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmll-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmll-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmln-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmln-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlo-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlo-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmls-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmls-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlu-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlu-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmly-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmly-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmlz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmry-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmry-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfjmrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrj-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrj-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrw-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrw-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmry-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmry-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utfmrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrw-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrw-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftgrz-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrk-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrk-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrl-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrl-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrm-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrm-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrn-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrn-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmro-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmro-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrp-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrp-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrq-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrq-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrr-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrr-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrs-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrs-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrt-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrt-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmru-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmru-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrv-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrv-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrw-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrw-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrx-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrx-v.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrz-h.tfmbin0 -> 172 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/tfm/utftmrz-v.tfmbin0 -> 172 bytes
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/umakeotf78
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/umakeotf_brsg65
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/umakeotf_jis04112
-rw-r--r--language/japanese/japanese-otf-uptex/umakeotf_pre12
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/umakeotf_prop38
-rwxr-xr-xlanguage/japanese/japanese-otf-uptex/umkjvf953
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-v.vfbin0 -> 651348 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-v.vfbin0 -> 651348 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-v.vfbin0 -> 651100 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothbn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothbn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgotheb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgotheb-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothebn-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothebn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothrn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpgothrn-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpmgothr-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpmgothr-v.vfbin0 -> 651348 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpmgothrn-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpmgothrn-v.vfbin0 -> 651348 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminbn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminbn-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminl-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminl-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminln-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminln-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminrn-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upexpminrn-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothb-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothb-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothbn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothbn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgotheb-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgotheb-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothebn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothebn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothr-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothr-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothrn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlgothrn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlmgothr-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlmgothr-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-h.vfbin0 -> 651072 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-v.vfbin0 -> 651100 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminb-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminb-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminbn-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminbn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminl-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminl-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminln-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminln-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminr-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminr-v.vfbin0 -> 651092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminrn-h.vfbin0 -> 651068 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/upnmlminrn-v.vfbin0 -> 651096 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygothb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygothb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygotheb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygotheb-v.vfbin0 -> 651344 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygothr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubygothr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubymgothr-h.vfbin0 -> 651320 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubymgothr-v.vfbin0 -> 651348 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminb-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminb-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminl-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminl-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminr-h.vfbin0 -> 651316 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/uprubyminr-v.vfbin0 -> 651340 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrk-h.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrk-v.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrl-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrl-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrm-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgrm-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgro-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcgro-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrk-h.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrk-v.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrl-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrl-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrm-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmrm-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmro-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfcmro-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrk-h.vfbin0 -> 4696 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrk-v.vfbin0 -> 4696 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrl-h.vfbin0 -> 4740 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrl-v.vfbin0 -> 4740 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrm-h.vfbin0 -> 2616 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrm-v.vfbin0 -> 2616 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrn-h.vfbin0 -> 3972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrn-v.vfbin0 -> 3972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgro-h.vfbin0 -> 4896 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgro-v.vfbin0 -> 4896 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrp-h.vfbin0 -> 2756 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrp-v.vfbin0 -> 2756 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrq-h.vfbin0 -> 3700 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrq-v.vfbin0 -> 3700 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrr-h.vfbin0 -> 2428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrr-v.vfbin0 -> 2428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrs-h.vfbin0 -> 4140 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrs-v.vfbin0 -> 4140 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrt-h.vfbin0 -> 1964 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrt-v.vfbin0 -> 1964 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgru-h.vfbin0 -> 1092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgru-v.vfbin0 -> 1092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrv-h.vfbin0 -> 592 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrv-v.vfbin0 -> 592 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrw-h.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrw-v.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrx-h.vfbin0 -> 112 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrx-v.vfbin0 -> 112 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgry-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgry-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrz-h.vfbin0 -> 1184 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfgrz-v.vfbin0 -> 1184 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbl-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbl-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbn-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbn-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbo-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbo-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbp-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbp-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbs-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbs-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbt-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbt-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbu-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbu-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbv-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbv-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgby-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgby-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbz-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgbz-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgej-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgej-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgek-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgek-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgel-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgel-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgem-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgem-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgen-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgen-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeo-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeo-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgep-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgep-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjger-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjger-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjges-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjges-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjget-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjget-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeu-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgeu-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgev-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgev-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgex-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgex-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgey-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgey-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgez-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgez-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrl-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrl-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrn-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrn-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgro-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgro-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrp-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrp-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrs-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrs-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrt-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrt-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgru-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgru-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrv-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrv-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgry-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgry-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrz-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjgrz-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbl-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbl-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbn-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbn-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbo-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbo-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbp-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbp-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbs-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbs-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbt-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbt-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbu-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbu-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbv-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbv-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmby-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmby-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbz-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmbz-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrl-h.vfbin0 -> 684 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrl-v.vfbin0 -> 684 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrn-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrn-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgro-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgro-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrp-h.vfbin0 -> 752 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrp-v.vfbin0 -> 752 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrs-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrs-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrt-h.vfbin0 -> 412 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrt-v.vfbin0 -> 412 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgru-h.vfbin0 -> 276 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgru-v.vfbin0 -> 276 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrv-h.vfbin0 -> 480 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrv-v.vfbin0 -> 480 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrx-h.vfbin0 -> 72 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrx-v.vfbin0 -> 72 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgry-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgry-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrz-h.vfbin0 -> 820 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmgrz-v.vfbin0 -> 820 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmll-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmll-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmln-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmln-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlo-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlo-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlp-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlp-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmls-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmls-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlt-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlt-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlu-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlu-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlv-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlv-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmly-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmly-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlz-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmlz-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrk-h.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrk-v.vfbin0 -> 784 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrl-h.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrl-v.vfbin0 -> 680 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrm-h.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrm-v.vfbin0 -> 376 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrn-h.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrn-v.vfbin0 -> 852 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmro-h.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmro-v.vfbin0 -> 444 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrp-h.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrp-v.vfbin0 -> 748 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrq-h.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrq-v.vfbin0 -> 632 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrr-h.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrr-v.vfbin0 -> 528 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrs-h.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrs-v.vfbin0 -> 768 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrt-h.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrt-v.vfbin0 -> 408 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmru-h.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmru-v.vfbin0 -> 272 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrv-h.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrv-v.vfbin0 -> 476 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmry-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmry-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrz-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfjmrz-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrj-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrj-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrk-h.vfbin0 -> 4696 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrk-v.vfbin0 -> 4696 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrl-h.vfbin0 -> 4740 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrl-v.vfbin0 -> 4740 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrm-h.vfbin0 -> 2616 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrm-v.vfbin0 -> 2616 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrn-h.vfbin0 -> 3972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrn-v.vfbin0 -> 3972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmro-h.vfbin0 -> 4896 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmro-v.vfbin0 -> 4896 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrp-h.vfbin0 -> 2756 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrp-v.vfbin0 -> 2756 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrq-h.vfbin0 -> 3700 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrq-v.vfbin0 -> 3700 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrr-h.vfbin0 -> 2428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrr-v.vfbin0 -> 2428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrs-h.vfbin0 -> 4140 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrs-v.vfbin0 -> 4140 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrt-h.vfbin0 -> 1964 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrt-v.vfbin0 -> 1964 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmru-h.vfbin0 -> 1092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmru-v.vfbin0 -> 1092 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrv-h.vfbin0 -> 592 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrv-v.vfbin0 -> 592 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrw-h.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrw-v.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrx-h.vfbin0 -> 112 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrx-v.vfbin0 -> 112 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmry-h.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmry-v.vfbin0 -> 104 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrz-h.vfbin0 -> 1184 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utfmrz-v.vfbin0 -> 1184 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrk-h.vfbin0 -> 3792 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrk-v.vfbin0 -> 3792 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrl-h.vfbin0 -> 3876 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrl-v.vfbin0 -> 3876 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrm-h.vfbin0 -> 2160 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrm-v.vfbin0 -> 2160 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrn-h.vfbin0 -> 3080 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrn-v.vfbin0 -> 3080 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgro-h.vfbin0 -> 4252 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgro-v.vfbin0 -> 4252 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrp-h.vfbin0 -> 1972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrp-v.vfbin0 -> 1972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrq-h.vfbin0 -> 2992 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrq-v.vfbin0 -> 2992 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrr-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrr-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrs-h.vfbin0 -> 3264 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrs-v.vfbin0 -> 3264 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrt-h.vfbin0 -> 1496 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrt-v.vfbin0 -> 1496 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgru-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgru-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrv-h.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrv-v.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrw-h.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrw-v.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrz-h.vfbin0 -> 428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftgrz-v.vfbin0 -> 428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrk-h.vfbin0 -> 3792 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrk-v.vfbin0 -> 3792 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrl-h.vfbin0 -> 3876 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrl-v.vfbin0 -> 3876 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrm-h.vfbin0 -> 2160 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrm-v.vfbin0 -> 2160 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrn-h.vfbin0 -> 3080 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrn-v.vfbin0 -> 3080 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmro-h.vfbin0 -> 4252 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmro-v.vfbin0 -> 4252 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrp-h.vfbin0 -> 1972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrp-v.vfbin0 -> 1972 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrq-h.vfbin0 -> 2992 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrq-v.vfbin0 -> 2992 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrr-h.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrr-v.vfbin0 -> 1872 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrs-h.vfbin0 -> 3264 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrs-v.vfbin0 -> 3264 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrt-h.vfbin0 -> 1496 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrt-v.vfbin0 -> 1496 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmru-h.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmru-v.vfbin0 -> 816 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrv-h.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrv-v.vfbin0 -> 136 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrw-h.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrw-v.vfbin0 -> 88 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrx-h.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrx-v.vfbin0 -> 68 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrz-h.vfbin0 -> 428 bytes
-rw-r--r--language/japanese/japanese-otf-uptex/vf/utftmrz-v.vfbin0 -> 428 bytes
1061 files changed, 7825 insertions, 0 deletions
diff --git a/language/japanese/japanese-otf-uptex/00otf-uptex.txt b/language/japanese/japanese-otf-uptex/00otf-uptex.txt
new file mode 100644
index 0000000000..4247e89f2f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/00otf-uptex.txt
@@ -0,0 +1,384 @@
+[ Title ]
+japanese-otf-uptex Ver.0.23 2019/04/01
+
+
+[ Abstract ]
+This package provides upLaTeX support of
+japanese-otf package "otfbeta (v1.7b8 2019/04/01)" by psitau-san
+( http://psitau.kitunebi.com/otf.html )
+
+
+[ Contents ]
+00otf-uptex.txt : this file
+umakeotf : script to make vf, tfm
+umakeotf_brsg : script to make vf, tfm for burasage option
+umakeotf_jis04 : script to make vf, tfm for jis2004 option
+umakeotf_prop : script to make vf, tfm for proportional kana
+umakeotf_pre : preparation script for umakeotf*
+umkjvf : mkjvf with unicode support
+
+basepl/ubase-h.pl : unicode version of base-h.pl
+basepl/ubase-v.pl : unicode version of base-v.pl
+basepl/ubrsg-h.pl : unicode version of brsg-h.pl
+basepl/ubrsg-v.pl : unicode version of brsg-v.pl
+
+script/mkutf32list.pl : perl script making lists of characters on supplementary planes.
+script/MakeSPList.pm : perl module making data of characters on supplementary planes.
+script/mktfm_sp.pl : perl script making tfm for characters on supplementary planes.
+script/mkutfvf_sp.pl : perl script making vf for characters on supplementary planes.
+script/sp_list_j.txt : a list of characters on supplementary planes in UniJIS-UTF32.
+script/sp_list_c.txt : a list of characters on supplementary planes in UniGB-UTF32.
+script/sp_list_t.txt : a list of characters on supplementary planes in UniCNS-UTF32.
+script/sp_list_k.txt : a list of characters on supplementary planes in UniKS-UTF32.
+script/CheckDVICode.pm : perl module checking category of characters.
+script/umkpkana.pl : perl script making pl, ovp for proportional kana
+script/umkvpkana.pl : perl script making pl, ovp for proportional kana
+
+sty/otf.sty : basic style file
+sty/mlutf.sty : style file for multi option
+
+test/uplatex/* : test samples.
+
+COPYRIGHT : copyright notice of this package.
+
+
+[ Status ]
+Beta version.
+
+
+[ To Build ]
+## From source files
+The source distribution of japanese-otf-uptex does not contain tfm, vf files.
+To ganerate them, uppltotf and ovp2ovf (TeX Live r43143 or later) are required and
+we run scripts as follows:
+ $ ./umakeotf
+ $ ./umakeotf_brsg
+ $ ./umakeotf_jis04
+ $ ./umakeotf_prop
+
+## CTAN distribution
+The CTAN distribution contains tfm, vf files.
+
+
+[ About jis2004 option ]
+otfbeta-uptex (japanese-otf-uptex) Ver.0.12 or later supports
+combination of "jis2004" and "uplatex" option.
+If you run the script "umakeotf_jis04", tfm and vf for jis2004 will be generated.
+They cousumes about 36.1 Mbytes in total.
+You will get expected results by mapping the new fonts
+ up{,brsg}{nml,exp}{minr,gothr,minb,gothb,mgothr,minl,gotheb}n-{h,v}.tfm
+to Adobe standard CMap "UniJIS2004-UTF16-{H,V}".
+
+If you do not use "jis2004" option, you can delete tfm and vf:
+ up{,brsg}{nml,exp}{minr,gothr,minb,gothb,mgothr,minl,gotheb}n-{h,v}.{tfm,vf}
+
+Instead of using "jis2004" option,
+you can get same result by mapping conventional fonts
+ up{,brsg}{nml,exp}{minr,gothr,minb,gothb,mgothr,minl,gotheb}-{h,v}.tfm
+to Adobe standard CMap "UniJIS2004-UTF16-{H,V}".
+
+
+[ About proportional kana ]
+otfbeta-uptex (japanese-otf-uptex) Ver.0.14 or later supports
+proportional kana at deluxe option and \propshape.
+To build tfm files, uppltotf in TeX Live r43143 or TeX Live 2017 or later is required.
+
+
+[ Repository ]
+japanese-otf-uptex is maintained on GitHub:
+https://github.com/t-tk/japanese-otf-uptex
+
+
+[ History ]
+2007.12.09 Ver0.00
+ Initial version.
+ for "otfstable (v1.2.9 2007/3/19)"
+2008.01.12 Ver0.01
+ umakeotf
+ Revise: for upTeX-0.20
+ umkjvf::
+ Bug fix: Ruby glyphs, horizontally- and vertically optimized kana glyphs.
+ Revise: for upTeX-0.20
+ ubase-h.pl::
+ Insert glue between halfwidth kana and others at horizontal writing.
+ test/uplatex::
+ Revise.
+2008.10.01 Ver0.02
+ re-packaged for upTeX-0.24
+ tfm/*.tfm, vf/*.vf::
+ Delete
+ patch/*.patch::
+ Include
+2008.11.08 Ver0.03
+ Revise: for upTeX-0.25
+ umkjvf::
+ Add: Ruby glyphs, horizontally- and vertically optimized kana glyphs
+ in JIS X 0213 (ainu kana, etc.)
+ fontmap/*::
+ Revise.
+ test/uplatex/*::
+ Revise.
+ patch/*.patch::
+ Revise.
+2009.08.01 Ver0.04
+ Revise: for upTeX-0.28
+ umkjvf::
+ Bug fix: SIP option did not work
+ Revise: help message
+2010.03.28 Ver0.05
+ Revise: for "otfstable (v1.2.9.2 2010/3/26)", upTeX-0.30
+ umkjvf::
+ Revise: It may work with C-version ovp2ovf, opl2ofm
+ patch/*.patch::
+ Revise.
+ sty/*::
+ Removed.
+2010.05.xx Ver0.06
+ Test only. Not released.
+2012.01.02 Ver0.07
+ Revise: for "otfbeta (v1.7b3 2011/10/28)", upTeX in TeXLive svn r24922
+ umkjvf::
+ Revise: Based on "mkjvf version 1.0b21 (2010/3/25)"
+ Revise: use ovp2ovf (WEB version) in TeXLive svn r24922 for SIP
+ Bug fix: pTeX mode was not compatible with mkjvf for ruby.
+ umakeotf
+ Revise: Minor update about "mkdir tfm"
+ fontmap/*::
+ Revise.
+ patch/*.patch::
+ Revise.
+ COPYRIGHT::
+ Add.
+2012.01.22 Ver0.08
+ ## Thank Kitagawa san and Norbert san for helpful bug reports.
+ umkjvf::
+ Add: option '-ovp2ovf' and '-dbg'.
+ Revise: hankaku kana in ucs mode base font.
+ Support ovp2ovf (C version) in TeXLive svn r24887 for BMP.
+ Bug fix: combination of '-cp' and '-ucs'.
+ umakeotf::
+ Bug fix: up{exp,ruby}mgothr-{h,v}.vf was broken.
+ Revise: do not use '-chk' for hankaku kana in ucs mode base font.
+ basepl/ubase-{h,v}.pl::
+ Convert from ISO-2022-JP to UTF-8.
+ Add U+2014 as Type 5.
+ Revise hankaku kana.
+ test/uplatex/uotftest-utf8.tex::
+ Revise.
+2012.02.18 Ver0.09
+ For "otfbeta (v1.7b4 2012/01/22)", upTeX in TeXLive svn r24922
+ Enhance: support characters on supplementary planes (SP) in ucs mode base fonts
+ and those in macros \UTF{}, \UTFC{}, \UTFT{}, and \UTFM{}.
+ Not only upLaTeX but also pLaTeX can treat
+ the macros \UTF{}, \UTFC{}, \UTFT{}, and \UTFM{} for characters on SP.
+ To generate vf, we require ovp2ovf with set3 support
+ i.e. ovp2ovf (WEB version) in TeXLive svn r24922.
+ To treat dvi, we require dviware with set3 support
+ i.e. dvipdfmx in TeXLive svn r24509, dvipsk in TeXLive svn r18144.
+ sty/otf.sty ::
+ Support characters on SP in the macro \UTF{}.
+ sty/mlutf.sty ::
+ Support characters on SP in the macros \UTFC{}, \UTFT{}, and \UTFM{}.
+ umkjvf ::
+ Change option from '-sip' to '-sp <0-2>'.
+ Update references Unicode Blocks-6.1.0.txt (Date: 2011-06-14, 18:26:00 GMT [KW, LI])
+ and Adobe-Japan1-6 cid2code.txt (Version 02/04/2012).
+ umakeotf, script/sp_list_{j,c,t,k}.txt,
+ script/MakeSPList.pm, script/{mkutf32list,mktfm_sp,mkutfvf_sp}.pl ::
+ Add: New script to make vf, tfm for characters on SP.
+ test/uplatex/Makefile, test/uplatex/uotftest-utf8.tex ::
+ Revise.
+ test/uplatex/uotf-sp-utf8.tex, test/uplatex/sp_jp_text.tex,
+ test/uplatex/sp_{jp,cns,gb,kr}_utf.tex ::
+ Add.
+ patch/*.patch::
+ Revise.
+2012.04.21 Ver0.10
+ For "otfbeta (v1.7b5 2012/04/11)", upTeX in TeXLive svn r24922 or later
+ Enhance: support burasage on uplatex.
+ umakeotf_brsg, basepl/ubrsg-{h,v}.pl ::
+ Add. The files generate vf and tfm for burasage on uplatex.
+ The vf and tfm consume about 16.7 Mbytes in total.
+ umkjvf ::
+ Refer an environment variable OVP2OVF to set ovp2ovf command.
+ umakeotf ::
+ Revise.
+ sty/otf.sty ::
+ Adopt otf.sty [2012/04/11 v1.7b5 psitau] in otfbeta (v1.7b5 2012/4/11).
+ sty/mlutf.sty ::
+ Update version number.
+ test/uplatex/upbrsgtest.tex ::
+ Add.
+ test/uplatex/Makefile, test/uplatex/uotftest-utf8.tex ::
+ Revise.
+ patch/*.patch::
+ Revise.
+2012.07.09 Ver0.11
+ ## Thank ZR san for great contribution.
+ sty/otf.sty, sty/mlutf.sty ::
+ Apply new code to support surrogate pairs
+ when macros \UTF{}, \UTFT{}, \UTFC{} and/or \UTFM{} are used with hyperref package.
+ The new code is written by ZR san.
+ test/uplatex/uotftest-utf8.tex ::
+ Revise.
+2013.06.02 Ver0.12
+ ## Thank Kitagawa san for helpful reports.
+ script/mktfm_sp.pl, script/mkutfvf_sp.pl, umakeotf, umakeotf_bsrg, umkjvf ::
+ Support Gothic/ExtraBold (gt/eb).
+ script/mkutfvf_sp.pl ::
+ Refer an environment variable OVP2OVF to set ovp2ovf command.
+ umakeotf_jis04 ::
+ Add. The script generates vf and tfm for jis2004 option on uplatex.
+ The vf and tfm consume about 36.1 Mbytes in total.
+ fontmap/hiragino.map(for udvips), fontmap/hiraginox.map(for dvipdfmx) ::
+ Add jis2004 entry.
+ umkjvf ::
+ Revise comment.
+ umakeotf, umakeotf_bsrg ::
+ Clean up.
+ sty/otf.sty, sty/mlutf.sty ::
+ Add jis2004 entry.
+ Increment version number.
+ patch/*.patch::
+ Revise.
+ test/uplatex/upjis2004.tex, test/uplatex/Makefile::
+ Add new test.
+2013.11.21 Ver0.13
+ sty/otf.sty ::
+ Add scale option by following otfbeta v1.7b6.
+ Increment version number.
+ sty/mlutf.sty ::
+ Increment version number.
+ patch/*.patch::
+ Revise.
+ test/uplatex/otfscale.tex, test/uplatex/Makefile::
+ Add new test.
+2014.03.22 Ver0.14
+ umkjvf, sty/otf.sty, sty/mlutf.sty, otfbeta_uptex-0.14.patch ::
+ Increment version number.
+ script/umk{,v}pkana.pl ::
+ Add proportional kana support.
+ umakeotf_prop ::
+ Add. The script generates vf and tfm for proportional kana on uplatex.
+ The vf and tfm consume about 6.4 Mbytes in total.
+ umkjvf, script/CheckDVICode.pm, script/MakeSPList.pm ::
+ Move some subroutines in the new module and tune up.
+ test/uplatex/upkanatest{1,2}.tex, test/uplatex/Makefile ::
+ Add new tests.
+ COPYRIGHT ::
+ Update year.
+2014.03.28 Ver0.15
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ sty/otf.sty ::
+ Apply again update of otf.sty [2012/04/11 v1.7b5 psitau] in otfbeta (v1.7b5 2012/4/11).
+ patch/*.patch::
+ Revise.
+2014.07.26 Ver0.16
+ ## Thank Dora TeX san for helpful reports.
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ sty/otf.sty ::
+ Bug fix for ExtraBold (eb).
+ patch/*.patch::
+ Revise.
+2015.04.10 Ver0.17
+ ## Thank Akira Kakuto san for helpful reports.
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ sty/otf.sty ::
+ Fix bug for ruby.
+ patch/*.patch::
+ Revise.
+ COPYRIGHT ::
+ Update year.
+2017.03.04 Ver0.18
+ umakeotf{,_brsg,_jis04,_prop,_pre} ::
+ Clean up.
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ script/CheckDVICode.pm ::
+ Update reference Unicode Blocks-9.0.0.txt (Date: 2016-02-05, 23:48:00 GMT [KW])
+ script/mkutf32list.pl, script/sp_list_{c,j,k,t}.txt, test/uplatex/sp_{cns,gb,jp}_utf.tex ::
+ Update references: URL of cid2code.txt
+ and Adobe-CNS1-6 cid2code.txt (Version 12/04/2015).
+ script/umk{,v}pkana.pl, test/uplatex/upkanatest1.tex ::
+ Add more proportional kana support:
+ 〃〆ゔゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿヷヸヹヺ (in UTF-8)
+ Latest uppltotf (TeX Live r43143 or later) is required.
+ patch/*.patch::
+ Remove.
+ COPYRIGHT ::
+ Update year.
+2018.02.11 Ver0.19
+ ## Thank @aminophen san for many contributions.
+ sty/otf.sty, sty/mlutf.sty ::
+ Sync with japanese-otf [2018/02/01 v1.7b7].
+ Set default latin font T1.
+ Add {,u}pLaTeX engine check and a package option "autodetect-engine".
+ Increment version number.
+ script/CheckDVICode.pm ::
+ Update reference Unicode Blocks-10.0.0.txt (Date: 2017-04-12, 17:30:00 GMT [KW])
+ Add Block Kana Extended-A, CJK Unified Ideographs Extension F to is_ucs_jpn_range{).
+ script/mk{tfm,utfvf}_sp.pl, sty/otf.sty, sty/mlutf.sty ::
+ Add subfonts for CJK Unified Ideographs Extension F.
+ script/mkutf32list.pl ::
+ Add option -style=list-wo-collec.
+ script/mkutf32list.pl, script/sp_list_{c,j,k,t}.txt, test/uplatex/sp_{cns,gb,jp,kr}_utf.tex,
+ test/uplatex/sp_jp_text.tex ::
+ Update references:
+ Adobe-CNS1-7 cid2code.txt (Version 10/24/2017), and
+ Adobe-Japan1-6 cid2code.txt (Version 10/24/2017).
+ script/CheckDVICode.pm, script/umk{,v}pkana.pl, basepl/u{base,brsg}-{h,v}.pl ::
+ Add U+00B7 to char_type 3.
+ COPYRIGHT ::
+ Update year.
+2018.04.07 Ver0.20
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ script/CheckDVICode.pm, script/umk{,v}pkana.pl, basepl/u{base,brsg}-{h,v}.pl ::
+ Add U+00AB, U+2329, U+301A to char_type 1.
+ Add U+00BB, U+232A, U+301B, U+301E to char_type 2.
+ test/uplatex/{punctuation,punct0,paren0}.tex, test/uplatex/Makefile ::
+ Add a new test for punctuations.
+2018.05.13 Ver0.21
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ script/umk{,v}pkana.pl, basepl/u{base,brsg}-{h,v}.pl ::
+ Add U+203C, U+2047, U+2048, U+2049 to char_type 6.
+ script/umkpkana.pl, umakeotf_prop ::
+ Add -hk option to enable halfwidth katakana letters in hiraprop.
+ script/mkutf32list.pl ::
+ Remove feature 'switch'
+ test/uplatex/{exclam,upkanatest1}.tex, test/uplatex/Makefile ::
+ Add a new test for punctuations and halfwidth katakana.
+2018.12.08 Ver0.22
+ ## Thank @aminophen san, 柳田 Ryo san and @Man-Ting-Fan san for many contributions.
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ script/CheckDVICode.pm ::
+ Bug fix on U+3090..3093.
+ script/mkutf32list.pl ::
+ Replace encoding pragma to binmode.
+ script/mktfm_sp.pl, script/mkutfvf_sp.pl ::
+ Apply FindBin module.
+ script/mkutf32list.pl, script/sp_list_j.txt, test/uplatex/sp_jp_{utf,text}.tex ::
+ Update references:
+ Adobe-Japan1-7 cid2code.txt (Version 07/30/2018).
+ test/uplatex/paren0.tex ::
+ Fix typo.
+2019.04.01 Ver0.23
+ sty/otf.sty, sty/mlutf.sty ::
+ Increment version number.
+ script/CheckDVICode.pm, script/umk{,v}pkana.pl ::
+ Add more proportional kana support:
+ ヿゟ (in UTF-8)
+ Previously, they did not work due to a bug.
+ script/CheckDVICode.pm, test/uplatex/sp_jp_{utf,text}.tex ::
+ Update references:
+ Unicode Blocks-12.0.0.txt (Date: 2018-07-30, 19:40:00 GMT [KW])
+ Adobe-Japan1-7 cid2code.txt (Version 07/30/2018).
+ test/uplatex/era.tex ::
+ Added.
+ COPYRIGHT ::
+ Update year.
diff --git a/language/japanese/japanese-otf-uptex/COPYRIGHT b/language/japanese/japanese-otf-uptex/COPYRIGHT
new file mode 100644
index 0000000000..7ccde031af
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/COPYRIGHT
@@ -0,0 +1,26 @@
+Copyright (C) 2003--2019 SAITO Shuzaburo and INOUE Koichi
+Copyright (C) 2007--2019 TANAKA Takuji
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+3. Neither the name of the author may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/language/japanese/japanese-otf-uptex/README b/language/japanese/japanese-otf-uptex/README
new file mode 100644
index 0000000000..959114ee1f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/README
@@ -0,0 +1,32 @@
+README
+======
+
+From 00otf-uptex.txt:
+[ Title ]
+japanese-otf-uptex Ver.0.23 2019/04/01
+
+
+[ Abstract ]
+This package provides upLaTeX support of
+japanese-otf package "otfbeta (v1.7b8 2019/04/01)" by psitau-san
+( http://psitau.kitunebi.com/otf.html )
+
+--------------------
+
+For copyright and licensing, please see COPYRIGHT
+It is as same as the BSD 3-clause license.
+Ref. http://opensource.org/licenses/BSD-3-Clause
+
+--------------------
+
+The original source has been downloaded from
+ https://github.com/t-tk/japanese-otf-uptex
+as
+ https://github.com/t-tk/japanese-otf-uptex/releases/tag/v0.23
+
+After that the scripts run and the generated tfm and vf files included.
+
+Norbert Preining <preining@logic.at>
+TANAKA Takuji <ttk@t-lab.opal.ne.jp>
+2019-04-02
+
diff --git a/language/japanese/japanese-otf-uptex/basepl/ubase-h.pl b/language/japanese/japanese-otf-uptex/basepl/ubase-h.pl
new file mode 100644
index 0000000000..b0db092336
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/basepl/ubase-h.pl
@@ -0,0 +1,192 @@
+(COMMENT THIS IS A KANJI FORMAT FILE)
+(FAMILY OTF KANJI)
+(FACE F MRR)
+(CODINGSCHEME TEX KANJI TEXT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 0)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.1)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.25)
+ (EXTRASTRETCH R 0.2)
+ (EXTRASHRINK R 0.125)
+ )
+(GLUEKERN
+ (LABEL O 0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 1)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 2)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ (GLUE O 6 R 0.5 R 0.0 R 0.5)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 3)
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ (GLUE O 6 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 4)
+ (GLUE O 0 R 0.5 R 0.0 R 0.0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 0.75 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.0)
+ (GLUE O 6 R 0.5 R 0.0 R 0.0)
+ (GLUE O 7 R 0.5 R 0.0 R 0.0)
+ (STOP)
+ (LABEL O 5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ (STOP)
+ (LABEL O 6)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 7)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ )
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ UFF5F U3018 U3016 U301D U00AB
+ U2329 U301A
+ )
+(CHARSINTYPE O 2
+ 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
+ UFF60 U3019 U3017 U301F U00BB
+ U232A U301B U301E
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ U00B7
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ — ― … ‥
+ )
+(CHARSINTYPE O 6
+ ? !
+ U203C U2047 U2048 U2049
+ )
+(CHARSINTYPE O 7
+ UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
+ UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
+ UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
+ UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
+ UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
+ UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
+ UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
+ UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
+ )
+(TYPE O 0
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 1
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 2
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ (GLUE O 6 R 0.5 R 0.0 R 0.5)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ )
+ )
+(TYPE O 3
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ (GLUE O 6 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 4
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 0 R 0.5 R 0.0 R 0.0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 0.75 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.0)
+ (GLUE O 6 R 0.5 R 0.0 R 0.0)
+ (GLUE O 7 R 0.5 R 0.0 R 0.0)
+ )
+ )
+(TYPE O 5
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ )
+ )
+(TYPE O 6
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ )
+ )
+(TYPE O 7
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ (COMMENT
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
diff --git a/language/japanese/japanese-otf-uptex/basepl/ubase-v.pl b/language/japanese/japanese-otf-uptex/basepl/ubase-v.pl
new file mode 100644
index 0000000000..48ef439642
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/basepl/ubase-v.pl
@@ -0,0 +1,156 @@
+(COMMENT THIS IS A KANJI FORMAT FILE)
+(DIRECTION TATE)
+(FAMILY OTF KANJI)
+(FACE F MRR)
+(CODINGSCHEME TEX KANJI TEXT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 0)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.1)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.25)
+ (EXTRASTRETCH R 0.2)
+ (EXTRASHRINK R 0.125)
+ )
+(GLUEKERN
+ (LABEL O 0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 1)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 2)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 3)
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 4)
+ (GLUE O 0 R 0.5 R 0.0 R 0.0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 0.75 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.0)
+ (STOP)
+ (LABEL O 5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ (STOP)
+ (LABEL O 6)
+ (GLUE O 0 R 1.0 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ )
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ UFF5F U3018 U3016 U301D U00AB
+ U2329 U301A
+ )
+(CHARSINTYPE O 2
+ 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
+ UFF60 U3019 U3017 U301F U00BB
+ U232A U301B U301E
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ U00B7
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ — ― … ‥
+ )
+(CHARSINTYPE O 6
+ ? !
+ U203C U2047 U2048 U2049
+ )
+(TYPE O 0
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 1
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 2
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ )
+ )
+(TYPE O 3
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ )
+ )
+(TYPE O 4
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 0 R 0.5 R 0.0 R 0.0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 0.75 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.0)
+ )
+ )
+(TYPE O 5
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ )
+ )
+(TYPE O 6
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ (COMMENT
+ (GLUE O 0 R 1.0 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ )
+ )
diff --git a/language/japanese/japanese-otf-uptex/basepl/ubrsg-h.pl b/language/japanese/japanese-otf-uptex/basepl/ubrsg-h.pl
new file mode 100644
index 0000000000..787bf0a3e5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/basepl/ubrsg-h.pl
@@ -0,0 +1,167 @@
+(COMMENT THIS IS A KANJI FORMAT FILE)
+(FAMILY OTF KANJI)
+(FACE F MRR)
+(CODINGSCHEME TEX KANJI TEXT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 0)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.1)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.25)
+ (EXTRASTRETCH R 0.2)
+ (EXTRASHRINK R 0.125)
+ )
+(GLUEKERN
+ (LABEL O 0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 1)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 2)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ (GLUE O 6 R 0.5 R 0.0 R 0.5)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 3)
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ (GLUE O 6 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.25 R 0.0 R 0.25)
+ (GLUE D 8 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 4)
+ (GLUE O 0 R 1.0 R 0.0 R 0.0)
+ (GLUE O 1 R 1.0 R 0.0 R 0.0)
+ (GLUE O 2 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 1.25 R 0.0 R 0.75)
+ (GLUE O 4 R 1.0 R 0.0 R 0.5)
+ (GLUE O 5 R 1.0 R 0.0 R 0.0)
+ (GLUE O 6 R 1.0 R 0.0 R 0.0)
+ (GLUE O 7 R 0.5 R 0.0 R 0.0)
+ (GLUE D 8 R 1.0 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ (STOP)
+ (LABEL O 6)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 7)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL D 8)
+ (GLUE O 0 R 1.0 R 0.0 R 0.5)
+ (GLUE O 1 R 1.0 R 0.0 R 0.5)
+ (GLUE O 2 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 1.25 R 0.0 R 0.75)
+ (GLUE O 4 R 1.0 R 0.0 R 0.5)
+ (GLUE O 5 R 1.0 R 0.0 R 0.5)
+ (GLUE O 6 R 1.0 R 0.0 R 0.5)
+ (GLUE O 7 R 0.5 R 0.0 R 0.0)
+ (GLUE D 8 R 1.0 R 0.0 R 0.5)
+ (STOP)
+ )
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ UFF5F U3018 U3016 U301D U00AB
+ U2329 U301A
+ )
+(CHARSINTYPE O 2
+ ’ ” ) 〕 ] } 〉 》 」 』 】
+ UFF60 U3019 U3017 U301F U00BB
+ U232A U301B U301E
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ U00B7
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ — ― … ‥
+ )
+(CHARSINTYPE O 6
+ ? !
+ U203C U2047 U2048 U2049
+ )
+(CHARSINTYPE O 7
+ UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
+ UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
+ UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
+ UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
+ UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
+ UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
+ UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
+ UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
+ )
+(CHARSINTYPE D 8
+ 、 ,
+ )
+(TYPE O 0
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 1
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 2
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 3
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 4
+ (CHARWD R 0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 5
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 6
+ (CHARWD R 1.0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE O 7
+ (CHARWD R 0.5)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
+(TYPE D 8
+ (CHARWD R 0)
+ (CHARHT R 0.88)
+ (CHARDP R 0.12)
+ )
diff --git a/language/japanese/japanese-otf-uptex/basepl/ubrsg-v.pl b/language/japanese/japanese-otf-uptex/basepl/ubrsg-v.pl
new file mode 100644
index 0000000000..7a5afbf9e3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/basepl/ubrsg-v.pl
@@ -0,0 +1,142 @@
+(COMMENT THIS IS A KANJI FORMAT FILE)
+(DIRECTION TATE)
+(FAMILY OTF KANJI)
+(FACE F MRR)
+(CODINGSCHEME TEX KANJI TEXT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 0)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.1)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.25)
+ (EXTRASTRETCH R 0.2)
+ (EXTRASHRINK R 0.125)
+ )
+(GLUEKERN
+ (LABEL O 0)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 1)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 2)
+ (GLUE O 0 R 0.5 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.5 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 3)
+ (GLUE O 0 R 0.25 R 0.0 R 0.25)
+ (GLUE O 1 R 0.25 R 0.0 R 0.25)
+ (GLUE O 2 R 0.25 R 0.0 R 0.25)
+ (GLUE O 3 R 0.5 R 0.0 R 0.25)
+ (GLUE O 4 R 0.25 R 0.0 R 0.25)
+ (GLUE O 5 R 0.25 R 0.0 R 0.25)
+ (GLUE O 7 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 4)
+ (GLUE O 0 R 1.0 R 0.0 R 0.0)
+ (GLUE O 1 R 1.0 R 0.0 R 0.0)
+ (GLUE O 2 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 1.25 R 0.0 R 0.75)
+ (GLUE O 4 R 1.0 R 0.0 R 0.5)
+ (GLUE O 5 R 1.0 R 0.0 R 0.0)
+ (GLUE O 6 R 1.0 R 0.0 R 0.0)
+ (GLUE O 7 R 1.0 R 0.0 R 0.5)
+ (STOP)
+ (LABEL O 5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (KRN O 5 R 0.0)
+ (STOP)
+ (LABEL O 6)
+ (GLUE O 0 R 1.0 R 0.0 R 0.5)
+ (GLUE O 1 R 0.5 R 0.0 R 0.5)
+ (GLUE O 3 R 0.25 R 0.0 R 0.25)
+ (STOP)
+ (LABEL O 7)
+ (GLUE O 0 R 1.0 R 0.0 R 0.5)
+ (GLUE O 1 R 1.0 R 0.0 R 0.5)
+ (GLUE O 2 R 0.5 R 0.0 R 0.0)
+ (GLUE O 3 R 1.25 R 0.0 R 0.75)
+ (GLUE O 4 R 1.0 R 0.0 R 0.5)
+ (GLUE O 5 R 1.0 R 0.0 R 0.5)
+ (GLUE O 6 R 1.0 R 0.0 R 0.5)
+ (GLUE O 7 R 1.0 R 0.0 R 0.5)
+ (STOP)
+ )
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ UFF5F U3018 U3016 U301D U00AB
+ U2329 U301A
+ )
+(CHARSINTYPE O 2
+ ’ ” ) 〕 ] } 〉 》 」 』 】
+ UFF60 U3019 U3017 U301F U00BB
+ U232A U301B U301E
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ U00B7
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ — ― … ‥
+ )
+(CHARSINTYPE O 6
+ ? !
+ U203C U2047 U2048 U2049
+ )
+(CHARSINTYPE O 7
+ 、 ,
+ )
+(TYPE O 0
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 1
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 2
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 3
+ (CHARWD R 0.5)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 4
+ (CHARWD R 0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 5
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 6
+ (CHARWD R 1.0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
+(TYPE O 7
+ (CHARWD R 0)
+ (CHARHT R 0.5)
+ (CHARDP R 0.5)
+ )
diff --git a/language/japanese/japanese-otf-uptex/script/CheckDVICode.pm b/language/japanese/japanese-otf-uptex/script/CheckDVICode.pm
new file mode 100644
index 0000000000..6e98ae866f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/CheckDVICode.pm
@@ -0,0 +1,284 @@
+package CheckDVICode;
+
+use strict;
+use Exporter;
+our @ISA = qw(Exporter);
+our @EXPORT = qw(is_dvicode is_ucs_open is_ucs_kigo is_ucs_hira
+ is_ucs_kata is_ucs_hankana is_ucs_jpn_range);
+
+=head1 NAME
+
+CheckDVICode.pm
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+our ($dvicode, $is_ucs);
+
+sub is_dvicode($){
+ my ($key)=@_;
+ my ($code)=($dvicode);
+
+ if (!$is_ucs) {
+ if ($key eq 'hira-a') { return ($code == 0x2421);}
+ if ($key eq 'hira-i') { return ($code == 0x2423);}
+ if ($key eq 'hira-u') { return ($code == 0x2425);}
+ if ($key eq 'hira-e') { return ($code == 0x2427);}
+ if ($key eq 'hira-o') { return ($code == 0x2429);}
+ if ($key eq 'hira-tsu') { return ($code == 0x2443);}
+ if ($key eq 'hira-ya') { return ($code == 0x2463);}
+ if ($key eq 'hira-yu') { return ($code == 0x2465);}
+ if ($key eq 'hira-yo') { return ($code == 0x2467);}
+ if ($key eq 'hira-wa') { return ($code == 0x246E);}
+ if ($key eq 'hira-Vu') { return 0; } # large JIS X 0213
+ if ($key eq 'hira-ka') { return 0; } # small JIS X 0213
+ if ($key eq 'hira-ke') { return 0; } # small JIS X 0213
+ if ($key eq 'kata-a') { return ($code == 0x2521);}
+ if ($key eq 'kata-i') { return ($code == 0x2523);}
+ if ($key eq 'kata-u') { return ($code == 0x2525);}
+ if ($key eq 'kata-e') { return ($code == 0x2527);}
+ if ($key eq 'kata-o') { return ($code == 0x2529);}
+ if ($key eq 'kata-tsu') { return ($code == 0x2543);}
+ if ($key eq 'kata-ya') { return ($code == 0x2563);}
+ if ($key eq 'kata-yu') { return ($code == 0x2565);}
+ if ($key eq 'kata-yo') { return ($code == 0x2567);}
+ if ($key eq 'kata-wa') { return ($code == 0x256E);}
+ if ($key eq 'kata-ka') { return ($code == 0x2575);}
+ if ($key eq 'kata-ke') { return ($code == 0x2576);}
+ if ($key eq 'kata-Va') { return 0; } # large JIS X 0213
+ if ($key eq 'kata-Vi') { return 0; } # : JIS X 0213
+ if ($key eq 'kata-Ve') { return 0; } # : JIS X 0213
+ if ($key eq 'kata-Vo') { return 0; } # large JIS X 0213
+ if ($key eq 'kata-ku') { return 0; } # small JIS X 0213
+ if ($key eq 'kata-mu') { return 0; } # small JIS X 0213
+ if ($key eq 'kata-ku..ro') { return 0; } # small JIS X 0213
+ if ($key eq 'comma') { return ($code == 0x2124);}
+ if ($key eq 'period') { return ($code == 0x2125);}
+ if ($key eq 'odoriji') { return
+ ((0x2133 <= $code && $code <= 0x2136) || $code == 0x213C);}
+ if ($key eq 'hira-odoriji') { return
+ ($code == 0x2135 || $code == 0x2136);}
+ if ($key eq 'kutouten') { return
+ ($code>=0x2122 && $code<=0x2128);}
+ if ($key eq 'burasage') { return
+ ($code>=0x2122 && $code<=0x2125);}
+ if ($key eq 'nakaten' ) { return ($code == 0x2126);}
+ if ($key eq 'colon' ) { return ($code == 0x2127);}
+ if ($key eq 'semicolon') { return ($code == 0x2128);}
+ if ($key eq 'quote') { return
+ ($code >= 0x2146 && $code <= 0x2149);}
+ if ($key eq 's-quote') { return
+ ($code == 0x2146 || $code == 0x2147);}
+ if ($key eq 'd-quote') { return
+ ($code == 0x2148 || $code == 0x2149);}
+ if ($key eq 'kakko') { return
+ (0x214A <= $code && $code <= 0x215B);}
+ if ($key eq 'open') { return ($code%2==0);}
+ if ($key eq 'close') { return ($code%2==1);}
+
+ die "illegal keyname ($key)\n";
+ } else { # ucs
+ if ($key eq 'hira-a') { return ($code == 0x3041);} # small
+ if ($key eq 'hira-i') { return ($code == 0x3043);} # :
+ if ($key eq 'hira-u') { return ($code == 0x3045);} # :
+ if ($key eq 'hira-e') { return ($code == 0x3047);} # :
+ if ($key eq 'hira-o') { return ($code == 0x3049);} # :
+ if ($key eq 'hira-tsu') { return ($code == 0x3063);} # :
+ if ($key eq 'hira-ya') { return ($code == 0x3083);} # :
+ if ($key eq 'hira-yu') { return ($code == 0x3085);} # :
+ if ($key eq 'hira-yo') { return ($code == 0x3087);} # :
+ if ($key eq 'hira-wa') { return ($code == 0x308E);} # small
+ if ($key eq 'hira-Vu') { return ($code == 0x3094);} # large JIS X 0213
+ if ($key eq 'hira-ka') { return ($code == 0x3095);} # small JIS X 0213
+ if ($key eq 'hira-ke') { return ($code == 0x3096);} # small JIS X 0213
+ if ($key eq 'kata-a') { return ($code == 0x30A1);} # small
+ if ($key eq 'kata-i') { return ($code == 0x30A3);} # :
+ if ($key eq 'kata-u') { return ($code == 0x30A5);} # :
+ if ($key eq 'kata-e') { return ($code == 0x30A7);} # :
+ if ($key eq 'kata-o') { return ($code == 0x30A9);} # :
+ if ($key eq 'kata-tsu') { return ($code == 0x30C3);} # :
+ if ($key eq 'kata-ya') { return ($code == 0x30E3);} # :
+ if ($key eq 'kata-yu') { return ($code == 0x30E5);} # :
+ if ($key eq 'kata-yo') { return ($code == 0x30E7);} # :
+ if ($key eq 'kata-wa') { return ($code == 0x30EE);} # :
+ if ($key eq 'kata-ka') { return ($code == 0x30F5);} # :
+ if ($key eq 'kata-ke') { return ($code == 0x30F6);} # small
+ if ($key eq 'kata-Va') { return ($code == 0x30F7);} # large JIS X 0213
+ if ($key eq 'kata-Vi') { return ($code == 0x30F8);} # : JIS X 0213
+ if ($key eq 'kata-Ve') { return ($code == 0x30F9);} # : JIS X 0213
+ if ($key eq 'kata-Vo') { return ($code == 0x30FA);} # large JIS X 0213
+ if ($key eq 'kata-ku') { return ($code == 0x31F0);} # small JIS X 0213
+ if ($key eq 'kata-mu') { return ($code == 0x31FA);} # small JIS X 0213
+ if ($key eq 'kata-ku..ro') { return
+ ($code >= 0x31F0 && $code <= 0x31FF);} # small JIS X 0213
+ if ($key eq 'comma') { return ($code == 0xFF0C);}
+ if ($key eq 'period') { return ($code == 0xFF0E);}
+ if ($key eq 'odoriji') { return
+ ($code == 0x30FD || $code == 0x30FE ||
+ $code == 0x309D || $code == 0x309E ||
+ $code == 0x30FC);}
+ if ($key eq 'hira-odoriji') { return
+ ($code == 0x309D || $code == 0x309E);}
+ if ($key eq 'kutouten') { return
+ ($code == 0x3001 || $code == 0x3002 ||
+ $code == 0xFF0C || $code == 0xFF0E ||
+ $code == 0x30FB ||
+ $code == 0xFF1A || $code == 0xFF1B);}
+ if ($key eq 'burasage') { return
+ ($code == 0x3001 || $code == 0x3002 ||
+ $code == 0xFF0C || $code == 0xFF0E);}
+ if ($key eq 'nakaten' ) { return
+ ($code == 0x30FB || $code == 0x00B7);}
+ if ($key eq 'colon' ) { return ($code == 0xFF1A);}
+ if ($key eq 'semicolon') { return ($code == 0xFF1B);}
+ if ($key eq 'quote') { return
+ ($code == 0x2018 || $code == 0x2019 ||
+ $code == 0x201C || $code == 0x201D);}
+ if ($key eq 's-quote') { return
+ ($code == 0x2018 || $code == 0x2019);}
+ if ($key eq 'd-quote') { return
+ ($code == 0x201C || $code == 0x201D);}
+ if ($key eq 'kakko') { return
+ ((0x3008 <= $code && $code <= 0x3011) ||
+ $code == 0x3014 || $code == 0x3015 ||
+ $code == 0xFF08 || $code == 0xFF09 ||
+ $code == 0xFF3B || $code == 0xFF3D ||
+ $code == 0xFF5B || $code == 0xFF5D ||
+ $code == 0xFF5F || $code == 0xFF60 || # X0213 1-02-54,55
+ $code == 0x3018 || $code == 0x3019 || # X0213 1-02-56,57
+ $code == 0x3016 || $code == 0x3017 || # X0213 1-02-58,59
+ $code == 0x301D || $code == 0x301F || # X0213 1-13-64,65
+ $code == 0x00AB || $code == 0x00BB || # X0213 1-09-08,18
+ $code == 0x2329 || $code == 0x232A ||
+ $code == 0x301A || $code == 0x301B ||
+ $code == 0x301E
+ );}
+ if ($key eq 'open') { return &is_ucs_open; }
+ if ($key eq 'close') { return (!&is_ucs_open); }
+
+ # ucs only
+ if ($key eq 'hira-yori'){ return ($code == 0x309F);} # yori
+ if ($key eq 'kata-koto'){ return ($code == 0x30FF);} # koto
+
+ die "illegal keyname ($key)\n";
+ }
+}
+
+sub is_ucs_open{
+ if ($dvicode == 0x00AB || $dvicode == 0x2329
+ || $dvicode == 0x301D
+ || $dvicode == 0xFF3B || $dvicode == 0xFF5B
+ || $dvicode == 0xFF5F) { return 1;}
+ if ($dvicode == 0x00BB || $dvicode == 0x232A
+ || $dvicode == 0x301E || $dvicode == 0x301F
+ || $dvicode == 0xFF3D || $dvicode == 0xFF5D
+ || $dvicode == 0xFF60) { return 0;}
+ return ($dvicode%2==0);
+}
+
+sub is_ucs_kigo{
+ return 1 if ($dvicode==0x00AB || $dvicode==0x00BB);
+ return 1 if ($dvicode==0x00B7);
+ return 1 if ($dvicode>=0x2018 && $dvicode<=0x2019);
+ return 1 if ($dvicode>=0x201C && $dvicode<=0x201D);
+ return 1 if ($dvicode>=0x2329 && $dvicode<=0x232A);
+ return 1 if ($dvicode>=0x3001 && $dvicode<=0x301F);
+ return 1 if ($dvicode>=0x3097 && $dvicode<=0x309E);
+ return 1 if ($dvicode>=0x30FB && $dvicode<=0x30FE);
+ return 1 if ($dvicode>=0xFF08 && $dvicode<=0xFF60);
+
+ return 0;
+}
+
+sub is_ucs_hira{
+ return 1 if ($dvicode>=0x3041 && $dvicode<=0x3093);
+ return 1 if ($dvicode>=0x3094 && $dvicode<=0x3096); # Vu, small Ka, small Ke
+# return 1 if ($dvicode==0x309F); # Yori :: It is omitted because it is not included in "Tuned" in AJ1-6
+ return 0;
+}
+
+sub is_ucs_kata{
+ return 1 if ($dvicode>=0x30A1 && $dvicode<=0x30F6);
+ return 1 if ($dvicode>=0x30F7 && $dvicode<=0x30FA); # Va, Vi, Ve, Vo
+ return 1 if ($dvicode>=0x31F0 && $dvicode<=0x31FF); # small Ku, small Shi, ... , Small Re, Small Ro
+# return 1 if ($dvicode==0x30FF); # Koto :: It is omitted because it is not included in "Tuned" in AJ1-6
+ return 0;
+}
+
+sub is_ucs_hankana{
+ return 1 if ($dvicode>=0xFF61 && $dvicode<=0xFF9F);
+ return 0;
+}
+
+# Reference:
+# http://www.unicode.org/Public/UNIDATA/Blocks.txt
+# Blocks-12.0.0.txt
+# Date: 2018-07-30, 19:40:00 GMT [KW]
+sub is_ucs_jpn_range{
+ return 1 if ($dvicode<=0x04FF); # Cyrillic
+
+ return 0 if ($dvicode< 0x1E00);
+ return 1 if ($dvicode<=0x243F); # Control Pictures
+
+ return 0 if ($dvicode< 0x2460);
+ return 1 if ($dvicode<=0x27BF); # Dingbats
+
+ return 0 if ($dvicode< 0x2900);
+ return 1 if ($dvicode<=0x29FF); # Miscellaneous Mathematical Symbols-B
+
+ return 0 if ($dvicode< 0x2B00);
+ return 1 if ($dvicode<=0x2BFF); # Miscellaneous Symbols and Arrows
+
+ return 0 if ($dvicode< 0x2E80);
+ return 1 if ($dvicode<=0x2FDF); # Kangxi Radicals
+
+ return 0 if ($dvicode< 0x3000);
+ return 1 if ($dvicode<=0x30FF); # Katakana
+
+ return 0 if ($dvicode< 0x3190);
+ return 1 if ($dvicode<=0x319F); # Kanbun
+
+ return 0 if ($dvicode< 0x31F0);
+ return 1 if ($dvicode<=0x4DBF); # CJK Unified Ideographs Extension A
+
+ return 0 if ($dvicode< 0x4E00);
+ return 1 if ($dvicode<=0x9FFF); # CJK Unified Ideographs
+
+ return 0 if ($dvicode< 0xE000);
+ return 1 if ($dvicode<=0xFB4F); # Alphabetic Presentation Forms
+
+ return 0 if ($dvicode< 0xFE10);
+ return 1 if ($dvicode<=0xFE1F); # Vertical Forms
+
+ return 0 if ($dvicode< 0xFE30);
+ return 1 if ($dvicode<=0xFE4F); # CJK Compatibility Forms
+
+ return 0 if ($dvicode< 0xFF00);
+ return 1 if ($dvicode<=0xFFEF); # Halfwidth and Fullwidth Forms
+
+ return 0 if ($dvicode< 0x1B000);
+ return 1 if ($dvicode<=0x1B0FF); # Kana Supplement
+ return 1 if ($dvicode<=0x1B12F); # Kana Extended-A
+ return 1 if ($dvicode<=0x1B16F); # Small Kana Extension
+
+ return 0 if ($dvicode< 0x1F100);
+ return 1 if ($dvicode<=0x1F1FF); # Enclosed Alphanumeric Supplement
+ return 1 if ($dvicode<=0x1F2FF); # Enclosed Ideographic Supplement
+
+ return 0 if ($dvicode< 0x20000);
+ return 1 if ($dvicode<=0x2A6DF); # CJK Unified Ideographs Extension B
+ return 1 if ($dvicode<=0x2B73F); # CJK Unified Ideographs Extension C
+ return 1 if ($dvicode<=0x2B81F); # CJK Unified Ideographs Extension D
+ return 1 if ($dvicode<=0x2CEAF); # CJK Unified Ideographs Extension E
+ return 1 if ($dvicode<=0x2EBEF); # CJK Unified Ideographs Extension F
+
+ return 0 if ($dvicode< 0x2F800);
+ return 1 if ($dvicode<=0x2FA1F); # CJK Compatibility Ideographs Supplement
+
+ return 0;
+}
+
+1;
diff --git a/language/japanese/japanese-otf-uptex/script/MakeSPList.pm b/language/japanese/japanese-otf-uptex/script/MakeSPList.pm
new file mode 100644
index 0000000000..8dc9ce0e3a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/MakeSPList.pm
@@ -0,0 +1,71 @@
+package MakeSPList;
+
+use strict;
+use Exporter;
+use File::Basename qw/dirname/;
+our @ISA = qw(Exporter);
+our @EXPORT = qw(make_sp_char_list);
+
+=head1 NAME
+
+MakeSPList.pm
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+our ($r_exist_head, $r_exist_char);
+
+my $num = '[12][0-9A-F]{4}';
+
+sub make_sp_char_list(@) {
+ my (@lang)=@_;
+ my (@exist_head_mul, %exist_char_mul)=();
+ my ($lang, $first_hex);
+
+ my $moduledir=dirname(__FILE__);
+
+ foreach $lang (@lang) {
+ open(LIST, "$moduledir/sp_list_$lang.txt") || die "$!";
+ my (@exist_head_each, %exist_char_each)=();
+ while (<LIST>) {
+ chomp;
+ s/\s+//g;
+ next if (/^[#%]/);
+ s/[#%].*$//;
+ s/,$//;
+ my @tmp;
+ foreach $_ (split ',', $_) {
+ if (/^($num)$/io) {
+ @tmp = (hex($1));
+ } elsif (/^($num)-($num)$/io) {
+ @tmp = (hex($1)..hex($2));
+ } else {
+ die "input [$_] is not expected\n";
+ }
+ foreach $_ (@tmp) {
+ my $HEX=sprintf("%X",$_);
+ $first_hex=int($_/0x1000);
+ $exist_head_each[$first_hex]++;
+ $exist_char_each{$HEX}=1;
+ if ($exist_char_mul{$HEX} eq '' && $exist_head_mul[$first_hex]!~/$lang/) {
+ $exist_head_mul[$first_hex].=$lang;
+ }
+ $exist_char_mul{$HEX}.=$lang;
+# warn "$HEX $first_hex ",sprintf("%X",$first_hex),"\n";
+ }
+ }
+ }
+ @{$r_exist_head->{$lang}}=@exist_head_each;
+ %{$r_exist_char->{$lang}}=%exist_char_each;
+ }
+ if (@lang>1) {
+ $lang = join ',', @lang;
+ @{$r_exist_head->{$lang}}=@exist_head_mul;
+ %{$r_exist_char->{$lang}}=%exist_char_mul;
+ }
+}
+
+1;
diff --git a/language/japanese/japanese-otf-uptex/script/mktfm_sp.pl b/language/japanese/japanese-otf-uptex/script/mktfm_sp.pl
new file mode 100755
index 0000000000..99485c83ef
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/mktfm_sp.pl
@@ -0,0 +1,99 @@
+#!/usr/bin/perl
+
+=head1 NAME
+
+mktfm_sp.pl
+
+=head1 USAGE
+
+script/mktfm_sp.pl
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+use FindBin;
+use lib "$FindBin::Bin";
+use MakeSPList;
+
+$multi=3;
+@tex_tfm_h=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x2B, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x0E, 0x54, 0x45, 0x58, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x20, 0x54, 0x45, 0x58, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x4F, 0x54, 0x46, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, 0x33, 0x33, 0x00, 0x02, 0x00, 0x00);
+@tex_tfm_v=(0x00, 0x09, 0x00, 0x01, 0x00, 0x2B, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x0E, 0x54, 0x45, 0x58, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x20, 0x54, 0x45, 0x58, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x4F, 0x54, 0x46, 0x20, 0x4B, 0x41, 0x4E, 0x4A, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, 0x33, 0x33, 0x00, 0x02, 0x00, 0x00);
+@dvips_tfm_h=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
+@dvips_tfm_v=(0x00, 0x09, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
+
+opendir(TFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
+
+my @face = qw/mr gr mb gb mgr ml ge/;
+my @lang = qw/j t c k/;
+my @dir = qw/h v/;
+my %font_id = qw/1b g 1d h 1e i 1f j
+ 20 k 21 l 22 m 23 n 24 o 25 p 26 q 27 r
+ 28 s 29 t 2a u 2b v 2c w 2d x 2e y 2f z/;
+
+&MakeSPList::make_sp_char_list(@lang);
+
+&make_utf_tfm;
+&make_multi_utf_tfm;
+&make_unified_utf_tfm;
+
+sub make_utf_tfm {
+ foreach $lang ($lang[0]){ #language
+ foreach $face (@face){ #face
+ foreach $dir (@dir){ #direction
+ &maketfm_body($face, $dir, $lang);
+ }
+ }
+ }
+}
+sub make_multi_utf_tfm {
+ foreach $lang (@lang[1..$multi]){ #language
+ foreach $face (@face[0..1]){ #face
+ foreach $dir (@dir){ #direction
+ &maketfm_body($face, $dir, $lang);
+ }
+ }
+ }
+}
+sub make_unified_utf_tfm {
+ foreach $face (@face[0..1]){ #face
+ foreach $dir (@dir){ #direction
+ &maketfm_body($face, $dir, @lang);
+ }
+ }
+}
+
+sub maketfm_body {
+ my ($face, $dir, @ln)=@_;
+=comment
+ ## mktfm.pl does same procedure.
+ $filename="utf$lang$face".sprintf("%x",$first_hex)."-$dir";
+ open(TEXTFM,">tfm/$filename.tfm") || die "Can't make \'tfm/$filename.tfm\'!\n";
+ binmode(TEXTFM);
+ if ($i==0) {
+ foreach $binary(@tex_tfm_h) {$_ = pack("C", $binary);print TEXTFM "$_";}
+ }elsif ($i==1){
+ foreach $binary(@tex_tfm_v) {$_ = pack("C", $binary);print TEXTFM "$_";}
+ }
+ close(TEXTFM);
+=cut
+ my $lang = join ',', @ln;
+ my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
+
+ foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
+ next if (!$exist_head[$first_hex]);
+
+ $id = $font_id{sprintf("%x", $first_hex)};
+ $filename= (@ln>1) ? "utf$face$id-$dir" : "utf$lang$face$id-$dir";
+ open(TEXTFM,">tfm/$filename.tfm") || die "Can't make \'tfm/$filename.tfm\'!\n";
+ binmode(TEXTFM);
+ if ($dir eq 'h') {
+ foreach $binary(@tex_tfm_h) {$_ = pack("C", $binary);print TEXTFM "$_";}
+ }elsif ($dir eq 'v'){
+ foreach $binary(@tex_tfm_v) {$_ = pack("C", $binary);print TEXTFM "$_";}
+ }
+ close(TEXTFM);
+ }
+}
diff --git a/language/japanese/japanese-otf-uptex/script/mkutf32list.pl b/language/japanese/japanese-otf-uptex/script/mkutf32list.pl
new file mode 100755
index 0000000000..377659d398
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/mkutf32list.pl
@@ -0,0 +1,162 @@
+#!/usr/bin/perl -n -s
+
+=head1 NAME
+
+mkutf32list.pl
+
+=head1 USAGE
+
+mkutf32list.pl cid2code.txt > sp_jp_text.tex
+mkutf32list.pl -style=utf cid2code.txt > sp_jp_utf.tex
+mkutf32list.pl -style=kchar cid2code.txt > sp_jp_kchar.tex
+mkutf32list.pl -style=list cid2code.txt > sp_list_j.txt
+mkutf32list.pl -style=list-wo-collec cid2code.txt > sp_list_ja.txt
+mkutf32list.pl -allrange cid2code.txt > sp_jp_text.tex
+
+=head1 AUTHOR
+
+Takuji Tanaka
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+use strict;
+binmode(STDOUT, ":utf8");
+
+our ($style, $allrange);
+our (@count, %reset_ch, $icollec, $cid2code, $line);
+our ($col_utf32, @out);
+our (@cid_max, $collection_n, $collection, $utfmac, $cmap, $source);
+
+BEGIN{
+ $line = 0;
+ @count = ();
+ %reset_ch = ();
+ $icollec = 0;
+ @out = ();
+}
+
+if (/cid2code/) {
+ chomp;
+ s/^# /# in /;
+ $cid2code=$_;
+ $cid2code=~s/^#/%/;
+}
+
+if ($.<8 && /((Adobe-(?:Japan|CNS|GB|Korea).*)-\d)\s/) {
+ $collection_n=$1;
+ $collection=$2;
+ if ($collection =~ /cns/i) {
+ @cid_max = qw/-1 14098 17407 17600 18845 18964 19087 19155 19178/;
+ $utfmac="UTFT"; $cmap="UniCNS-UTF32";
+ $source="Adobe-CNS1-7/cid2code.txt"; }
+ elsif ($collection =~ /gb/i) {
+ @cid_max = qw/-1 7716 9896 22126 22352 29063 30283/;
+ $utfmac="UTFC"; $cmap="UniGB-UTF32";
+ $source="Adobe-GB1-5/cid2code.txt"; }
+ elsif ($collection =~ /kor/i) {
+ @cid_max = qw/-1 9332 18154 18351/;
+ $utfmac="UTFK"; $cmap="UniKS-UTF32";
+ $source="Adobe-Korea1-2/cid2code.txt"; }
+ else {
+ @cid_max = qw/-1 8283 8358 8719 9353 15443 20316 23057 23059/;
+ $utfmac="UTF"; $cmap="UniJIS-UTF32";
+ $source="Adobe-Japan1-7/cid2code.txt"; }
+}
+
+next if (/^#/);
+$line++;
+if ($line == 1) {
+ print <<END;
+%
+% This file is generated from the data of $cmap
+$cid2code
+% for $collection_n
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% $source
+%
+% A newer CMap may be required for some code points.
+%
+END
+}
+if (/^CID/) {
+ my @header = split;
+ my $i=0;
+ foreach (@header) {
+ if (/^Uni(JIS|KS|CNS|GB)-UTF32$/) {
+ $col_utf32 = $i;
+ last;
+ }
+ $i++
+ }
+ next;
+}
+
+my @list = split;
+my $cid = $list[0];
+my @utf32 = split ',', $list[$col_utf32];
+
+foreach (@utf32) {
+ s/^0+//;
+
+ next if ($_ eq '*');
+ next if ($_ =~ '^[1-7][0-9a-f]$|^.$');
+ next if ($_ =~ 'v');
+ tr/a-z/A-Z/;
+ my $ch=hex($_);
+ next if ($ch < 0x10000 && !$allrange);
+
+ while(!($cid_max[$icollec+1]>=$cid && $cid>$cid_max[$icollec])) {
+ $icollec++;
+ if ($icollec>@cid_max) {
+ die "CID:$cid (Character $_) is out of range!!\n";
+ }
+ }
+ if ($count[$icollec]==0) {
+ $reset_ch{$ch}=$icollec;
+ }
+ $count[$icollec]++;
+ push @out, $ch;
+}
+
+
+END {
+ my ($i, $out, $ch);
+
+ if ($style eq "list-wo-collec") { @out = sort(@out); }
+
+ foreach $ch (@out) {
+ if ($style eq "list-wo-collec") {}
+ elsif (defined($reset_ch{$ch})) {
+ $i=0;
+ print "\n\n";
+ print "%" if ($style =~ /list/);
+ print "$collection-$reset_ch{$ch}";
+ print "\\\\" if ($style !~ 'list');
+ print "\n";
+ }
+
+ $i++;
+ if ($style =~ /utf/) { $out=sprintf "\\${utfmac}{%X}", $ch; }
+ elsif ($style =~ /kchar/) { $out=sprintf "\\kchar\"%X", $ch; }
+ elsif ($style =~ /list/) { $out=sprintf "%X", $ch; }
+ else { $out=chr($ch); }
+ my ($newline);
+ $newline = $allrange ? 25 : 10;
+ if ($i % $newline != 1) {
+ print "," if ($style =~ /list/);
+ }
+ print $out;
+ if ($i % $newline == 0) {
+ print "%" if ($style =~ /utf/);
+ print "\n" ;
+ }
+ }
+
+ print "\n\n% end\n";
+}
diff --git a/language/japanese/japanese-otf-uptex/script/mkutfvf_sp.pl b/language/japanese/japanese-otf-uptex/script/mkutfvf_sp.pl
new file mode 100755
index 0000000000..8392b7b686
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/mkutfvf_sp.pl
@@ -0,0 +1,166 @@
+#!/usr/bin/perl -s
+
+=head1 NAME
+
+mkutfvf_sp.pl
+
+=head1 USAGE
+
+script/mkutfvf_sp.pl
+script/mkutfvf_sp.pl -debug
+script/mkutfvf_sp.pl -ovp2ovf='wovp2ovf'
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+use FindBin;
+use lib "$FindBin::Bin";
+use MakeSPList;
+
+if (!defined($ovp2ovf)) { ## check option '-ovp2ovf=????'
+ $ovp2ovf = defined($ENV{'OVP2OVF'}) ? $ENV{'OVP2OVF'} : 'ovp2ovf';
+}
+
+$multi=3;
+opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
+opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
+
+my @face = qw/mr gr mb gb mgr ml ge/;
+my @lang = qw/j t c k/; ## priority: j > t > c > k
+my %lang_id; foreach $_ (0..$#lang) { $lang_id{$lang[$_]}=$_; }
+my @dir = qw/h v/;
+my %font_id = qw/1b g 1d h 1e i 1f j
+ 20 k 21 l 22 m 23 n 24 o 25 p 26 q 27 r
+ 28 s 29 t 2a u 2b v 2c w 2d x 2e y 2f z/;
+
+&MakeSPList::make_sp_char_list(@lang);
+
+&makejvf;
+&makemlvf;
+&makeunivf;
+
+sub makejvf {
+ foreach $lang ($lang[0]){ #language
+ foreach $face (@face){ #face
+ foreach $dir (@dir){ #direction
+ &makevf_body($face, $dir, $lang);
+ }
+ }
+ }
+}
+sub makemlvf {
+ foreach $lang (@lang[1..$multi]){ #language
+ foreach $face (@face[0..1]){ #face
+ foreach $dir (@dir){ #direction
+ &makevf_body($face, $dir, $lang);
+ }
+ }
+ }
+}
+sub makeunivf {
+ foreach $face (@face[0..1]){ #face
+ foreach $dir (@dir){ #direction
+ &make_uni_vf_body($face, $dir, @lang);
+ }
+ }
+}
+
+sub makevf_body {
+ my ($face, $dir, $lang)=@_;
+
+ my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
+ foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
+ next if (!$exist_head[$first_hex]);
+
+ $HEX = sprintf("%X", $first_hex);
+ $id = $font_id{sprintf("%x", $first_hex)};
+ warn "now processing (face:$face, dir:$dir, lang:$lang, first_hex:$HEX, ID:$id) ...\n";
+ $filename="utf$lang$face$id-$dir";
+ open(OUT, ">ovp/$filename.ovp")||die "$!";
+ &fonthead;
+ print OUT "(MAPFONT D 0\n (FONTNAME otf-u$lang$face-$dir)\n";
+ &fontfoot;
+ &writechar($first_hex, $lang);
+ close(OUT);
+ unless ($debug){
+ system("$ovp2ovf ovp/$filename.ovp vf/$filename.vf vf/$filename.ofm");
+ unlink "vf/$filename.ofm";
+ }
+ }
+}
+
+sub make_uni_vf_body {
+ my ($face, $dir, @ln)=@_;
+ my $lang = join ',', @ln;
+
+ my @exist_head=@{$MakeSPList::r_exist_head->{$lang}};
+ foreach $first_hex (0x1b, 0x1d .. 0x2f) { # U+1Cxxx : not defined yet
+ next if (!$exist_head[$first_hex]);
+
+ $HEX = sprintf("%X", $first_hex);
+ $id = $font_id{sprintf("%x", $first_hex)};
+ warn "now processing (face:$face, dir:$dir, lang:MULTI, first_hex:$HEX, ID:$id) ...\n";
+ $filename="utf$face$id-$dir";
+ open(OUT, ">ovp/$filename.ovp")||die "$!";
+ &fonthead;
+ foreach $l (0 .. $#ln){
+ next if ($exist_head[$first_hex]!~/$ln[$l]/);
+ print OUT "(MAPFONT D $l\n (FONTNAME otf-u$lang[$l]$face-$dir)\n";
+ &fontfoot;
+ }
+ &writechar($first_hex, @ln);
+ close(OUT);
+ unless ($debug){
+ system("$ovp2ovf ovp/$filename.ovp vf/$filename.vf vf/$filename.ofm");
+ unlink "vf/$filename.ofm";
+ }
+ }
+}
+
+sub fonthead {
+print OUT <<END_OF_DATA;
+(VTITLE JVF for UTF16)
+(OFMLEVEL D 0)
+(DESIGNSIZE R 10.000000)
+(CHECKSUM O 0)
+END_OF_DATA
+}
+
+sub fontfoot {
+print OUT <<END_OF_DATA;
+ (FONTCHECKSUM O 0)
+ (FONTAT R 1.0)
+ (FONTDSIZE R 10.000000)
+ )
+END_OF_DATA
+}
+
+sub writechar {
+ my ($hex, @ln) = @_;
+ my $lang = join ',', @ln;
+ my %exist_char=%{$MakeSPList::r_exist_char->{$lang}};
+
+ foreach $ku (16 .. 79){
+ foreach $ten (16 .. 79){
+ $jis=sprintf("%X", $ku*256 + $ten + 0x2020);
+ $uni=sprintf("%X", $hex*0x1000 + ($ku-16)*64 + ($ten-16));
+ my $echr=$exist_char{$uni};
+ if ($echr) {
+ #warn("lang: $lang, jis: $jis, uni: $uni\n");
+ print OUT "(CHARACTER H $jis (CHARWD R 1.0) (MAP \n";
+ if (@ln>1 && $echr !~ $ln[0]) {
+ foreach $l (1 .. $#ln) {
+ if ($echr =~ /$ln[$l]/){
+ print OUT " (SELECTFONT D $lang_id{$ln[$l]})\n";
+ last;
+ }
+ }
+ }
+ print OUT " (SETCHAR H $uni)))\n";
+ }
+ }
+ }
+}
diff --git a/language/japanese/japanese-otf-uptex/script/sp_list_c.txt b/language/japanese/japanese-otf-uptex/script/sp_list_c.txt
new file mode 100644
index 0000000000..a4699d6ea8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/sp_list_c.txt
@@ -0,0 +1,17 @@
+%
+% This file is generated from the data of UniGB-UTF32
+% in cid2code.txt (Version 12/05/2017)
+% for Adobe-GB1-5
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-GB1-5/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+%Adobe-GB1-2
+20087,20089,200CC,215D7,2298F,20509,2099D,241FE
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/script/sp_list_j.txt b/language/japanese/japanese-otf-uptex/script/sp_list_j.txt
new file mode 100644
index 0000000000..a6ab70c194
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/sp_list_j.txt
@@ -0,0 +1,75 @@
+%
+% This file is generated from the data of UniJIS-UTF32
+% in cid2code.txt (Version 07/30/2018)
+% for Adobe-Japan1-7
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-Japan1-7/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+%Adobe-Japan1-0
+28CDD,2F8ED,25874,28EF6,2F8DC,2F884,2F877,2F80F,2F8D3,2F818
+21A1A,243D0,2F920,1F100
+
+%Adobe-Japan1-4
+1F110,1F111,1F112,1F113,1F114,1F115,1F116,1F117,1F118,1F119
+1F11A,1F11B,1F11C,1F11D,1F11E,1F11F,1F120,1F121,1F122,1F123
+1F124,1F125,1F126,1F127,1F128,1F129,1F150,1F151,1F152,1F153
+1F154,1F155,1F156,1F157,1F158,1F159,1F15A,1F15B,1F15C,1F15D
+1F15E,1F15F,1F160,1F161,1F162,1F163,1F164,1F165,1F166,1F167
+1F168,1F169,1F130,1F131,1F132,1F133,1F134,1F135,1F136,1F137
+1F138,1F139,1F13A,1F13B,1F13C,1F13D,1F13E,1F13F,1F140,1F141
+1F142,1F143,1F144,1F145,1F146,1F147,1F148,1F149,1F202,1F237
+1F170,1F171,1F172,1F173,1F174,1F175,1F176,1F177,1F178,1F179
+1F17A,1F17B,1F17C,1F17D,1F17E,1F17F,1F180,1F181,1F182,1F183
+1F184,1F185,1F186,1F187,1F188,1F189,2F945,2090E,26951,2B7D8
+2F8FC,2F995,2F8EA,2F822,26222,20BB7,29D4B,2F833,2B78E,2F8AC
+20A64,2F903,2B746,2B777,2F90B,20B9F,2F828,2F921,2F83F,2F873
+2D544,2000B,2F852,2967F,2F947,201A2,2E569,2B751,2F8B2,27FB7
+23CFE,2F91A,25AD7,2F89A,2F90F,2123D,2F81A,24D14,2F862,2B789
+2F9D0,2F9DF,2567F,266B0,20628,2008A,20984,2F82C,2F86D,2F8B6
+26999,233CC,2F8DB,2A9E6,2B7BD,2F96C,2E278,2053F,2626A,200B0
+2E6EA,28987,28E17,2B81A,242EE,2F8E1,23CBE,20611,2F9F4,2F804
+2363A,233FE,22609
+
+%Adobe-Japan1-5
+2131B,2146E,218BD,216B4,21E34,231C4,235C4,2373F,23763,247F1
+2548E,2550E,25771,259C4,25DA1,26AFF,26E40,270F4,27684,28277
+283CD,2A190,20089,200A2,200A4,20213,2032B,20381,20371,203F9
+2044A,20509,205D6,2074F,20807,2083A,208B9,2097C,2099D,20AD3
+20B1D,20D45,20DE1,20E95,20E6D,20E64,20F5F,21201,21255,2127B
+21274,212E4,212D7,212FD,21336,21344,213C4,2146D,215D7,26C29
+21647,21706,21742,219C3,21C56,21D2D,21D45,21D78,21D62,21DA1
+21D9C,21D92,21DB7,21DE0,21E33,21F1E,21F76,21FFA,2217B,2231E
+223AD,226F3,2285B,228AB,2298F,22AB8,22B4F,22B50,22B46,22C1D
+22BA6,22C24,22DE1,231C3,231F5,231B6,23372,233D3,233D2,233D0
+233E4,233D5,233DA,233DF,2344A,23451,2344B,23465,234E4,2355A
+23594,23639,23647,23638,2371C,2370C,23764,237FF,237E7,23824
+2383D,23A98,23C7F,23D00,23D40,23DFA,23DF9,23DD3,23F7E,24096
+24103,241C6,241FE,243BC,24629,246A5,24896,24A4D,24B56,24B6F
+24C16,24E0E,24E37,24E6A,24E8B,2504A,25055,25122,251A9,251E5
+251CD,2521E,2524C,2542E,254D9,255A7,257A9,257B4,259D4,25AE4
+25AE3,25AF1,25BB2,25C4B,25C64,25E2E,25E56,25E65,25E62,25ED8
+25EC2,25EE8,25F23,25F5C,25FE0,25FD4,2600C,25FFB,26017,26060
+260ED,26270,26286,23D0E,26402,2667E,2671D,268DD,268EA,2696F
+269DD,26A1E,26A58,26A8C,26AB7,26C73,26CDD,26E65,26F94,26FF8
+26FF6,26FF7,2710D,27139,273DB,273DA,273FE,27410,27449,27615
+27614,27631,27693,2770E,27723,27752,27985,27A84,27BB3,27BBE
+27BC7,27CB8,27DA0,27E10,2808A,280BB,28282,282F3,2840C,28455
+2856B,285C8,285C9,286D7,286FA,28949,28946,2896B,28988,289BA
+289BB,28A1E,28A29,28A71,28A43,28A99,28ACD,28AE4,28ADD,28BC1
+28BEF,28D10,28D71,28DFB,28E1F,28E36,28E89,28EEB,28F32,28FF8
+292A0,292B1,29490,295CF,296F0,29719,29750,298C6,29A72,29DDB
+29E15,29E8A,29E49,29EC4,29EE9,29EDB,29FCE,29FD7,2A02F,2A01A
+2A0F9,2A082,22218,2A38C,2A437,2A5F1,2A602,2A6B2,200F5,24E04
+24FF2,27D73,2F815,2F846,2F899,2F8A6,2F8E5,2F9DE,2A2B2,20158
+205B1,206EC,2B753,20D58,2B75A,2B75C,259CC,2B776,22E42,2B77C
+207C8,22FEB,279B4,2B782,2B78B,237F1,2B794,2404B,2B7AC,2B7AF
+2B7C9,2B7CF,2B7D2,26C9E,27C3C,2B7F0,2B765,2B80D,2B817,2634C
+29E3D,2A61A
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/script/sp_list_k.txt b/language/japanese/japanese-otf-uptex/script/sp_list_k.txt
new file mode 100644
index 0000000000..6af3e290ff
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/sp_list_k.txt
@@ -0,0 +1,14 @@
+%
+% This file is generated from the data of UniKS-UTF32
+% in cid2code.txt (Version 01/31/2012)
+% for Adobe-Korea1-2
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-Korea1-2/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/script/sp_list_t.txt b/language/japanese/japanese-otf-uptex/script/sp_list_t.txt
new file mode 100644
index 0000000000..084eac5187
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/sp_list_t.txt
@@ -0,0 +1,204 @@
+%
+% This file is generated from the data of UniCNS-UTF32
+% in cid2code.txt (Version 10/24/2017)
+% for Adobe-CNS1-7
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-CNS1-7/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+%Adobe-CNS1-0
+200CC,2008A,27607
+
+%Adobe-CNS1-1
+23ED7,26ED3,257E0,28BE9,258E1,294D9,259AC,2648D,25C01,2530E
+25CFE,25BB4,26C7F,25D20,25CC1,24882,24578,26E44,26ED6,24057
+26029,217F9,2836D,26121,2615A,262D0,26351,21661,20068,23766
+2833A,26489,2A087,26CC3,22714,26626,23DE3,266E8,28A48,226F6
+26498,2148A,2185E,24A65,24A95,26A52,23D7E,214FD,2F98F,249A7
+23530,21773,23DF8,2F994,20E16,217B4,2317D,2355A,23E8B,26DA3
+26B05,26B97,235CE,26DA5,26ED4,26E42,25BE4,26B96,26E77,26E43
+25C91,25CC0,28625,2863B,27088,21582,270CD,270F0,2F9B2,218A2
+2739A,2A0F8,22C27,275E0,23DB9,275E4,2770F,28A25,27924,27ABD
+27A59,27B3A,27B38,25430,25565,24A7A,216DF,27D54,27D8F,2F9D4
+27D53,27D98,27DBD,21910,2F9D7,28002,21014,2498A,281BC,2710C
+28365,28412,2A29F,20A50,289DE,2853D,23DBB,23262,22325,26ED7
+2853C,27ABE,2856C,2860B,28713,286E6,28933,21E89,255B9,28AC6
+23C9B,28B0C,255DB,20D31,28AE1,28BEB,28AE2,28AE5,28BEC,28C39
+28BFF,286D8,2127C,23E2E,26ED5,28AE0,26CB8,20274,26410,290AF
+290E5,24AD1,21915,2330A,24AE9,291D5,291EB,230B7,230BC,2546C
+29433,2941D,2797A,27175,20630,2415C,25706,26D27,216D3,24A29
+29857,29905,25725,290B1,29BD5,29B05,28600,2307D,29D3E,21863
+29E68,29FB7,2A192,2A1AB,2A0E1,2A123,2A1DF,2A134,2A193,2A220
+2193B,2A233,2A0B9,2A2B4,24364,2A3ED,28C2B,26DA2,2FA1B,2908B
+24975,249BB,249F8,24348,24A51,28BDA,218FA,2897E,28E36,28A44
+2896C,244B9,24473,243F8,217EF,218BE,23599,21885,2542F,217F8
+216FB,21839,21774,218D1,25F4B,216C0,24A25,213FE,212A8,213C6
+214B6,236A6,24994,27165,23E31,2555C,23EFB,27052,236EE,2999D
+26F26,21922,2373F,240E1,2408B,2410F,26C21,266B1,20FDF,20BA8
+20E0D,28B13,24436,20465,25651,201AB,203CB,2030A,20414,202C0
+28EB3,20275,2020C,24A0E,23E8A,23595,23E39,23EBF,21884,23E89
+205E0,204A3,20492,20491,28A9C,2070E,20873,2438C,20C20,249AC
+210E4,20E1D,24ABC,2408D,240C9,20345,20BC6,28A46,216FA,2176F
+21710,25946,219F3,21861,24295,25E83,28BD7,20413,21303,289FB
+21996,2197C,23AEE,21903,21904,218A0,216FE,28A47,21DBA,23472
+289A8,21927,217AB,2173B,275FD,22860,2262B,225AF,225BE,29088
+26F73,2003E,20046,2261B,22C9B,22D07,246D4,2914D,24665,22B6A
+22B22,23450,298EA,22E78,249E3,22D67,22CA1,2308E,232AD,24989
+232AB,232E0,218D9,2943F,23289,231B3,25584,28B22,2558F,216FC
+2555B,25425,23103,2182A,23234,2320F,23182,242C9,26D24,27870
+21DEB,232D2,232E1,25872,2383A,237BC,237A2,233FE,2462A,237D5
+24487,21912,23FC0,23C9A,28BEA,28ACB,2801E,289DC,23F7F,2403C
+2431A,24276,2478F,24725,24AA4,205EB,23EF8,2365F,24A4A,24917
+25FE1,24ADF,28C23,23F35,26DEA,24CD9,24D06,2A5C6,28ACC,249AB
+2498E,24A4E,249C5,248F3,28AE3,21864,25221,251E7,23232,24697
+23781,248F0,24ABA,24AC7,24A96,261AE,25581,27741,256E3,23EFA
+216E6,20D4C,2498C,20299,23DBA,2176E,201D4,20C0D,226F5,25AAF
+25A9C,2025B,25BC6,25BB3,25EBC,25EA6,249F9,217B0,26261,2615C
+27B48,25E82,26B75,20916,2004E,235CF,26412,263F8,2082C,25AE9
+25D43,25E0E,2343F,249F7,265AD,265A0,27127,26CD1,267B4,26A42
+26A51,26DA7,2721B,21840,218A1,218D8,2F9BC,23D8F,27422,25683
+27785,27784,28BF5,28BD9,28B9C,289F9,29448,24284,21845,27DDC
+24C09,22321,217DA,2492F,28A4B,28AFC,28C1D,28C3B,28D34,248FF
+24A42,243EA,23225,28EE7,28E66,28E65,249ED,24A78,23FEE,290B0
+29093,257DF,28989,28C26,28B2F,263BE,2421B,20F26,28BC5,24AB2
+294DA,295D7,28B50,24A67,28B64,28A45,27B06,28B65,258C8,298F1
+29948,21302,249B8,214E8,2271F,23DB8,22781,2296B,29E2D,2A1F5
+2A0FE,24104,2A1B4,2A0ED,2A0F3,2992F,26E12,26FDF,26B82,26DA4
+26E84,26DF0,26E00,237D7,26064,2359C,23640,249DE,202BF,2555D
+21757,231C9,24941,241B5,241AC,26C40,24F97,217B5,28A49,24488
+289FC,218D6,20F1D,26CC0,21413,242FA,22C26,243C1,23DB7,26741
+2615B,260A4,249B9,2498B,289FA,28B63,2189F,24AB3,24A3E,24A94
+217D9,24A66,203A7,21424,249E5,24916,24976,204FE,28ACE,28A16
+28BE7,255D5,28A82,24943,20CFF,2061A,20BEB,20CB8,217FA,216C2
+24A50,21852,28AC0,249AD,218BF,21883,27484,23D5B,28A81,21862
+20AB4,2139C,28218,290E4,27E4F,23FED,23E2D,203F5,28C1C,26BC0
+21452,24362,24A71,22FE3,212B0,223BD,21398,234E5,27BF4,236DF
+28A83,237D6,233FA,24C9F,236AD,26CB7,26D26,26D51,26C82,26FDE
+2173A,26C80,27053,217DB,217B3,21905,241FC,2173C,242A5,24293
+23EF9,27736,2445B,242CA,24259,289E1,26D28,244CE,27E4D,243BD
+24256,21304,243E9,2F825,23300,27AF4,256F6,27B18,27A79,249BA
+20346,27657,25FE2,275FE,2209A,28A9A,2403B,24A45,205CA,20611
+21EA8,23CFF,285E8,299C9,221C3,28B4E,20C78,20779,23F4A,24AA7
+26B52,27632,2493F,233CC,28948,21D90,27C12,24F9A,26BF7,2191C
+249F6,23FEF,2271B,257E1,2F8CD,2F806,24521,24934,26CBD,26411
+290C0,20A11,26469,20021,23519,2258D,2217A,249D0,20EF8,22926
+28473,217B1,24A2A,21820,29CAD,298A4,2160A,2372F,280E8,213C5
+291A8,270AF,289AB,2417A,2A2DF,28318,26E07,2816F,269B5,213ED
+2322F,28C30,28949,24988,24AA5,23F81,21FA1,295E9,2789D,28024
+27A3E,23CB7,26258,29D98,23D40,20E9D,282E2,20C41,20C96,20E76
+22C62,20EA2,21075,22B43,22EB3,20DA7,2688A,20EF9,27FF9,247E0
+29D7C,275A3,26048,24618,29EAC,29FDE,272B2,2048E,20EB6,27F2E
+2A434,243F2,29E06,294D0,26335,20D28,20D71,21F0F,21DD1,2176D
+2B473,28E97,25C21,20CD4,201F2,2A64A,2837D,2A2B2,24ABB,26E05
+2AE67,2251B,2DF3C,28E39,20F3B,25F1A,27486,267CC,24011,2F922
+20547,205DF,23FC5,24942,289E4,219DB,23CC8,24933,289AA,202A0
+26BB3,21305,224ED,26D29,27A84,23600,24AB1,22513,2037E,20380
+20347,2041F,249A4,20487,233B4,20BFF,220FC,202E5,22530,2058E
+23233,21983,205B3,23C99,24AA6,2372D,26B13,2F829,28ADE,23F80
+20954,23FEC,20BE2,21726,216E8,286AB,2F832,21596,21613,28A9B
+25772,20B8F,23FEB,22DA3,20C77,26B53,20D74,2170D,20EDD,20D4D
+289BC,22698,218D7,2403A,24435,210B4,2328A,28B66,2124F,241A5
+26C7E,21416,21454,24363,24BF5,2123C,2A150,24278,2163E,21692
+20D4E,26C81,26D2A,217DC,217FB,217B2,26DA6,21828,216D5,26E45
+249A9,26FA1,22554,21911,216B8,27A0E,20204,21A34,259CC,205A5
+21B44,21CA5,26B28,21DF9,21E37,21EA4,24901,22049,22173,244BC
+20CD3,21771,28482,201C1,2F894,2133A,26888,223D0,22471,26E6E
+28A36,25250,21F6A,270F8,22668,2029E,28A29,227B4,24982,2498F
+27A53,2F8A6,26ED2,20656,23FB7,2285F,28B9D,2995D,22980,228C1
+20118,21770,22E0D,249DF,2138E,217FC,22E36,2571D,24A28,24A23
+24940,21829,23400,231F7,231F8,231A4,231A5,20E75,251E6,23231
+285F4,231C8,25313,228F7,2439C,24A21,237C2,2F8DB,241CD,290ED
+233E6,26DA0,2346F,28ADF,235CD,2363C,28A4A,203C9,23659,2212A
+23703,2919C,20923,227CD,23ADB,21958,23B5A,23EFC,2248B,248F1
+26B51,23DBC,23DBD,241A4,2490C,24900,23CC9,20D32,231F9,22491
+26D25,26DA1,26DEB,2497F,24085,26E72,26F74,28B21,2F908,23E2F
+23F82,2304B,23E30,21497,2403D,29170,24144,24091,24155,24039
+23FF0,23FB4,2413F,24156,24157,24140,261DD,24277,24365,242C1
+2445A,24A27,24A22,28BE8,25605,24974,23044,24823,2882B,28804
+20C3A,26A2E,241E2,216E7,24A24,249B7,2498D,249FB,24A26,2F92F
+228AD,28EB2,24A8C,2415F,24A79,28B8F,28C03,2189E,21988,28ED9
+21A4B,28EAC,24F82,24D13,263F5,26911,2690E,26F9F,2509D,2517D
+21E1C,25220,232AC,28964,28968,216C1,255E0,2760C,2261C,25857
+27B39,27126,2910D,20C42,20D15,2512B,22CC6,20341,24DB8,294E5
+280BE,22C38,2815D,269F2,24DEA,20D7C,20FB4,20CD5,2BAB3,20E96
+20F64,22CA9,28256,244D3,20D46,29A4D,280E9,24EA7,22CC2,295F4
+252C7,297D4,22D44,2BCD7,22BCA,2B977,266DA,26716,279A0,25052
+20C43,28B4C,20731,201A9,22D8D,245C8,204FC,26097,20F4C,22A66
+2109D,20D9C,22775,2A601,20E09,22ACF,2C5F8,210C8,239C2,2829B
+25E49,220C7,22CB2,29720,24E3B,2C9A0,27574,22E8B,22208,2A65B
+28CCD,20E7A,20C34,27639,22BCE,22C51,210C7,2A632,28CD2,28D99
+28CCA,2775E,2F828,2107B,210D3,212FE,247EF,24EA5,24F5C,28189
+2B42C
+
+%Adobe-CNS1-3
+2010C,200D1,200CD,200CB,21FE8,200CA,2010E,21BC1,2F878,20086
+248E9,2626A,2634B,26612,26951,278B2,28E0F,29810,20087,2A3A9
+21145,27735,209E7,29DF6,2700E,2A133,2846C,21DCA,205D0,22AE6
+27D84,210F4,20C0B,278C8,260A5,22D4C,21077,2106F,221A1,20D96
+22CC9,20F31,2681C,210CF,22803,22939,251E3,20E8C,20F8D,20EAA
+20F30,20D47,2114F,20E4C,20EAB,20BA9,20D48,210C0,2113D,22696
+20FAD,233F4,20D7E,20D7F,22C55,20E98,20F2E,26B50,29EC3,22DEE
+26572,280BD,20EFA,20E0F,20E77,20EFB,24DEB,20CD6,227B5,210C9
+20E10,20E78,21078,21148,28207,21455,20E79,24E50,22DA4,2101D
+2101E,210F5,210F6,20E11,27694,282CD,20FB5,20E7B,2517E,20FB6
+21180,252D8,2A2BD,249DA,2183A,24177,2827C,2573D,25B74,2313D
+289C0,23F41,20325,20ED8,25C65,24FB8,20B0D,26B0A,22EEF,23CB5
+26E99,23F8F,24CC9,2A014,286BC,28501,2267A,269A8,2424B,2215B
+2037F,2A45B,249EC,24962,27109,24A4F,24A5D,217DF,23AFA,20214
+208D5,20619,21F9E,2A2B6,2915B,28A59,29420,248F2,25535,20CCF
+27967,21BC2,20094,202B7,203A0,204D7,205D5,20615,20676,216BA
+20AC2,20ACD,20BBF,2F83B,20BCB,20BFB,20C3B,20C53,20C65,20C7C
+20C8D,20CB5,20CDD,20CED,20D6F,20DB2,20DC8,20E04,20E0E,20ED7
+20F90,20F2D,20E73,20FBC,2105C,2104F,21076,21088,21096,210BF
+2112F,2113B,212E3,21375,21336,21577,21619,217C3,217C7,2182D
+2196A,21A2D,21A45,21C2A,21C70,21CAC,21EC8,21ED5,21F15,22045
+2227C,223D7,223FA,2272A,22871,2294F,22967,22993,22AD5,22AE8
+22B0E,22B3F,22C4C,22C88,22CB7,25BE8,22D08,22D12,22DB7,22D95
+22E42,22F74,22FCC,23033,23066,2331F,233DE,23567,235F3,2361A
+23716,23AA7,23E11,23EB9,24119,242EE,2430D,24334,24396,24404
+244D6,24674,2472F,24812,248FB,24A15,24AC0,24F86,2502C,25299
+25419,25446,2546E,2553F,2555E,25562,25566,257C7,2585D,25903
+25AAE,25B89,25C06,26102,261B2,26402,2644A,26484,26488,26512
+265BF,266B5,266FC,26799,2686E,2685E,268C7,26926,26939,269FA
+26A2D,26A34,26B5B,26B9D,26CA4,26DAE,2704B,271CD,27280,27285
+2728B,272E6,27450,277CC,27858,279DD,279FD,27A0A,27B0B,27D66
+28009,28023,28048,28083,28090,280F4,2812E,2814F,281AF,2821A
+28306,2832F,2838A,28468,286AA,28956,289B8,289E7,289E8,28B46
+28BD4,28C09,28FC5,290EC,29110,2913C,2915E,24ACA,294E7,295B0
+295B8,29732,298D1,29949,2996A,299C3,29A28,29B0E,29D5A,29D9B
+29EF8,29F23,2A293,2A2FF,2A5CB,20C9C,224B0,24A93,28B2C,217F5
+28B6C,28B99,266AF,27655,25635,25956,25E81,20E6D,23E88,24C9E
+217F6,2187B,25C4A,25311,25ED8,20FEA,20D49,236BA,25148,210C1
+24706,26893,226F4,27D2F,241A3,27D73,26ED0,272B6,211D9,23CFC
+2A6A9,20EAC,21CA2,24FC2,20FEB,22DA0,20FEC,20E0A,20FED,21187
+24B6E,25A95,20979,22465,23CFE,29F30,24FA9,2959E,23DB6,267B3
+23720,23EF7,23E2C,230DA,212A9,24963,270AE,2176C,27164,26D22
+24AE2,2493E,26D23,203FC,23CFD,24919,24A77,28A5A,2F840,2183B
+26159,233F5,28BC2,21D46,26ED1,28B2D,23CC7,25ED7,27656,25531
+21944,29903,26DDC,270AD,261AD,28A0F,23677,200EE,26846,24F0E
+2634C,2626B,21877,2408C,2307E,21E3D,203B5,205C3,21376,24A12
+28B2B,26083
+
+%Adobe-CNS1-4
+29C73,2414E,251CD,25D30,28A32,23281,2A107,21980,2870F,2A2BA
+29947,28AEA,2207E,289E3,21DB6,22712,233F9,23C63,24505,24A13
+25CA4,25695,28DB9,2143F,2497B,2710D,26D74,26B15,26FBE
+
+%Adobe-CNS1-5
+27267,27CB1,27CC5,242BF,23617,27352,26E8B,270D2,2A351,27C6C
+26B23,25A54,21A63,23E06,23F61,28BB9,27BEF,21D5E,29EB0,29945
+20A6F,23256,22796,23B1A,23551,240EC,21E23,201A4,26C41,20239
+298FA,20B9F,221C1,2896D,29079,2A1B5,26C46,286B2,273FF,2549A
+24B0F
+
+%Adobe-CNS1-6
+21D53,2369E,26021,258DE,24161,2890D,231EA,20A8A,2325E,25DB9
+2368E,27B65,26E88,25D99,224BC,224C1,224C9,224CC,235BB,2ADFF
+
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/script/umkpkana.pl b/language/japanese/japanese-otf-uptex/script/umkpkana.pl
new file mode 100755
index 0000000000..4c14fd4559
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/umkpkana.pl
@@ -0,0 +1,601 @@
+#!/usr/bin/perl -s
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+use Encode;
+use FindBin;
+use lib "$FindBin::Bin";
+use CheckDVICode;
+
+if ($sp==1) { # supplemental plane
+ use MakeSPList;
+ &make_sp_char_list('j');
+ %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
+}
+
+$_=<DATA>;
+while(<DATA>) {
+ chomp($_);
+ my (@data)=split(' ', $_);
+ my ($char);
+ last if (@data<6);
+ $char = shift @data;
+ push @character, $char;
+ $cid {$char}=shift @data;
+ $min_w3 {$char}=shift @data;
+ $min_w6 {$char}=shift @data;
+ $goth_w3{$char}=shift @data;
+ $goth_w6{$char}=shift @data;
+ $maru_w4{$char}=shift @data;
+}
+
+@charwidth=({%min_w3}, {%min_w6}, {%goth_w3}, {%goth_w6}, {%maru_w4});
+@font_name=("phiraminw3-h", "phiraminw6-h", "phirakakuw3-h", "phirakakuw6-h", "phiramaruw4-h");
+@kanji_font_name=("hminr-h", "hminb-h", "hgothr-h", "hgothb-h", "hmgothr-h");
+@kana_font_name=("hiramin-w3-h", "hiramin-w6-h", "hirakaku-w3-h", "hirakaku-w6-h", "hiramaru-w4-h");
+$font_at=1.0;
+$half_width= ($font_at / 2);
+$quater_width= ($font_at / 4);
+opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
+opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
+opendir(JPL, "pl") || mkdir("pl",0755) || die "cannot mkdir pl";
+opendir(JFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
+closedir(OVP);
+closedir(VF);
+closedir(JPL);
+closedir(JFM);
+
+$n_fixed=7; ## type 0..6
+$ucs=1; # 1: upphiraXXX or 0: phiraXXX
+if ($ucs) {
+ $CheckDVICode::is_ucs=1;
+ foreach(@font_name, @kanji_font_name) {
+ $_="up$_";
+ }
+ if ($hk) { ## command line option -hk: Enable halfwidth katakana
+ $hk_mode=1;
+ $n_fixed=8; ## type 0..7
+ }
+}
+
+#main
+for ($i=0; $i<=4; $i++){
+ open (JPL, ">pl/$font_name[$i].pl");
+ &tfm_head_h;
+ &chars_in_type_jis;
+ &chars_in_type_prop;
+ &print_type_jis;
+ &print_type_prop;
+ &glue_kern;
+ close(JPL);
+}
+for ($i=0; $i<=4; $i++){
+ @cpm_h=(0x29E, 0x29F, 0x2A0, 0x2A1);
+ open (OVP, ">ovp/$font_name[$i].ovp");
+ &fonthead;
+ &write_char;
+ close(OVP);
+}
+#
+#sub rtn
+#
+sub tfm_head_h {
+ print JPL "(FAMILY PROP KANA)\n";
+ print JPL "(FACE F MRR)\n";
+ print JPL "(CODINGSCHEME TEX KANJI TEXT)\n";
+ print JPL "(DESIGNSIZE R 10.0)\n";
+ print JPL "(CHECKSUM O 0)\n";
+ print JPL "(SEVENBITSAFEFLAG TRUE)\n";
+ print JPL "(FONTDIMEN\n";
+ print JPL " (SLANT R 0.0)\n";
+ print JPL " (SPACE R 0.0)\n";
+ printf JPL " (STRETCH R %f)\n", $font_at/10;
+ print JPL " (SHRINK R 0.0)\n";
+ printf JPL " (XHEIGHT R %f)\n", $font_at;
+ printf JPL " (QUAD R %f)\n", $font_at;
+ printf JPL " (EXTRASPACE R %f)\n", $font_at/4;
+ printf JPL " (EXTRASTRETCH R %f)\n", $font_at/5;
+ printf JPL " (EXTRASHRINK R %f)\n", $font_at/8;
+ print JPL " )\n";
+}
+sub char_foot_h {
+ printf JPL " (CHARHT R %f)\n", $font_at*0.88;
+ printf JPL " (CHARDP R %f)\n", $font_at*0.12;
+ print JPL " )\n";
+}
+sub glue_kern{
+ print JPL "(GLUEKERN\n";
+ print JPL " (LABEL O 5)\n";
+ print JPL " (KRN O 5 R 0.0)\n";
+ print JPL " (LABEL O 0)\n";
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (LABEL H %X)\n",($char+$n_fixed);
+ }
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ print JPL " (LABEL O 1)\n";
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 2)\n";
+ printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
+ print JPL " (STOP)\n";
+ if ($hk_mode) {
+ print JPL " (LABEL O 7)\n";
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ print JPL " (STOP)\n";
+ }
+ print JPL " (LABEL O 6)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+$n_fixed), $half_width, $half_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 4)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width+$quater_width, $quater_width;
+ printf JPL " (GLUE O 5 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R 0.0)\n",($char+$n_fixed), $half_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 3)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 2 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width, $quater_width;
+ printf JPL " (GLUE O 4 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 7 R %f R 0.0 R %f)\n", $half_width, $half_width if $hk_mode;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+$n_fixed), $quater_width, $quater_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " )\n";
+}
+sub chars_in_type_jis{
+ my ($type1add, $type2add, $type3add, $type5, $type6add)=();
+ if ($ucs) {
+ $type1add = "UFF5F U3018 U3016 U301D U00AB U2329 U301A";
+ $type2add = "UFF60 U3019 U3017 U301F U00BB U232A U301B U301E";
+ $type3add = "U00B7";
+ $type5 = "— ― … ‥";
+ $type6add = "U203C U2047 U2048 U2049";
+ } else {
+ $type5 = "— … ‥";
+ }
+print JPL <<END_OF_DATA;
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ $type1add
+ )
+(CHARSINTYPE O 2
+ 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
+ $type2add
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ $type3add
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ $type5
+ )
+(CHARSINTYPE O 6
+ ? !
+ $type6add
+ )
+END_OF_DATA
+print JPL <<END_OF_DATA if ($hk_mode) ; ## Halfwidth Katakana
+(CHARSINTYPE O 7
+ UFF61 UFF62 UFF63 UFF64 UFF65 UFF66 UFF67
+ UFF68 UFF69 UFF6A UFF6B UFF6C UFF6D UFF6E UFF6F
+ UFF70 UFF71 UFF72 UFF73 UFF74 UFF75 UFF76 UFF77
+ UFF78 UFF79 UFF7A UFF7B UFF7C UFF7D UFF7E UFF7F
+ UFF80 UFF81 UFF82 UFF83 UFF84 UFF85 UFF86 UFF87
+ UFF88 UFF89 UFF8A UFF8B UFF8C UFF8D UFF8E UFF8F
+ UFF90 UFF91 UFF92 UFF93 UFF94 UFF95 UFF96 UFF97
+ UFF98 UFF99 UFF9A UFF9B UFF9C UFF9D UFF9E UFF9F
+ )
+END_OF_DATA
+}
+sub print_type_jis{
+ @type_width=($font_at, $half_width, $half_width, $half_width, $half_width, $font_at, $font_at);
+ if ($hk_mode) { push @type_width, $half_width; }
+ for ($k=0; $k<$n_fixed; $k++){
+ printf JPL "(TYPE H %x\n", $k;
+ printf JPL " (CHARWD R %f)\n", $type_width[$k];
+ &char_foot_h;
+ }
+}
+sub fonthead {
+ print OVP "(VTITLE Prop Kana)\n";
+ print OVP "(OFMLEVEL D 0)\n";
+ print OVP "(DESIGNSIZE R 10.000000)\n";
+ print OVP "(CHECKSUM O 0)\n";
+ print OVP "(MAPFONT D 1\n";
+ print OVP " (FONTNAME $kanji_font_name[$i])\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n", $font_at;
+ print OVP " (FONTDSIZE R 10.000000)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $kana_font_name[$i])\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n", $font_at;
+ print OVP " (FONTDSIZE R 10.000000)\n";
+ print OVP " )\n";
+}
+sub write_char {
+ if (!$ucs) {
+ for ($ku=1; $ku<=94; $ku++){
+ for ($ten=1; $ten<=94; $ten++){
+ $dvicode=($ku+32)*256+($ten+32);
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
+ elsif($ku==5){&print_kana_char;}else{&print_char;}
+ }
+ }
+ } else { # ucs
+ $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
+ for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
+ $CheckDVICode::dvicode=$dvicode=$ucscode;
+ next unless (&is_ucs_jpn_range);
+ if ($sp==1 && $ucscode>0xFFFF) {
+ next unless ($exist_char{sprintf("%X",$ucscode)});
+ }
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira || &is_dvicode('hira-yori')){&print_kana_char;}
+ elsif(&is_ucs_kata || &is_dvicode('kata-koto')){&print_kana_char;}
+ elsif(&is_ucs_hankana && $hk_mode){&print_hankana_char;}
+ else{&print_char;}
+ }
+ }
+}
+sub print_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SETCHAR H %X)\n",$dvicode;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_kigo_char{
+ my ($width,$cid);
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
+ $width=$half_width;
+ } elsif (&is_dvicode('kutouten')){#Kutouten
+ $width=$half_width;
+ } elsif (&is_dvicode('odoriji')){#odoriji
+ ($width,$cid)=&get_charwidth($i,$dvicode);
+ $width/=10;
+ } else{
+ $width=$font_at;
+ }
+ printf OVP " (CHARWD R %f)\n", $width;
+ print OVP " (MAP\n";
+ if (&is_dvicode('odoriji')){#odoriji
+ print OVP " (SELECTFONT D 2)\n";
+ } elsif ($ucs && &is_dvicode('quote')){#Quote
+ print OVP " (SELECTFONT D 2)\n";
+ }
+ if (&is_dvicode('nakaten') || &is_dvicode('colon') || &is_dvicode('semicolon')){#colon, semicolon, nakaten
+ printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
+ if ((&is_dvicode('quote') || &is_dvicode('kakko')) && &is_dvicode('open')){#Kakko
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ if (&is_dvicode('odoriji')){#odoriji
+ printf OVP " (SETCHAR H %X)\n",$cid;
+ } elsif ($ucs && &is_dvicode('quote')){#Quote
+ $cpmcode= shift(@cpm_h);
+ printf OVP " (SETCHAR H %X)\n",$cpmcode;
+ } else {
+ printf OVP " (SETCHAR H %X)\n",$dvicode;
+ }
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_kana_char{
+ my ($width,$cid)=&get_charwidth($i,$dvicode);
+ if ($width==0) {
+ return &print_char;
+ }
+ $width/=10;
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $width;
+ print OVP " (MAP\n";
+ print OVP " (SELECTFONT D 2)\n";
+ printf OVP " (SETCHAR H %X)\n",$cid;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_hankana_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $half_width;
+ print OVP " (MAP\n";
+ printf OVP " (SETCHAR H %X)\n",$dvicode;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub chars_in_type_prop{
+ %char_width_hash=();
+ for ($j=0; $j<@character; $j++){
+ my ($c0, $c1);
+ $c0=$c1=$character[$j];
+ if (!$ucs) {
+ if (!Encode::from_to($c1,'utf-8','euc-jp', Encode::FB_QUIET)
+ || $c0 eq "〃"
+ || $c0 eq "〆") { next; }
+ }
+ $char_width_hash{$c0}=$charwidth[$i]{$c0}/10;
+ }
+ $x = '-';
+ @uniq_char_width_array = grep( $_ ne $x && ($x = $_), sort values(%char_width_hash));
+ for ($j=0; $j<=$#uniq_char_width_array; $j++){
+ printf JPL "(CHARSINTYPE H %X\n",($j+$n_fixed);
+ print JPL " ";
+ @char_in_this_type = ();
+ while (($name, $value) = each(%char_width_hash)) {
+ if ($value == $uniq_char_width_array[$j]){
+ push(@char_in_this_type, $name);
+ }
+ }
+ @char_in_this_type = sort @char_in_this_type;
+ foreach $char_in_this(@char_in_this_type){
+ print JPL "$char_in_this ";#character
+ }
+ print JPL "\n";
+ print JPL " )\n";
+ }
+}
+sub print_type_prop{
+ for ($j=0; $j<=$#uniq_char_width_array; $j++){
+ $char_width=$uniq_char_width_array[$j];
+ printf JPL "(TYPE H %X\n", ($j+$n_fixed);
+ printf JPL " (CHARWD R %f)\n", $char_width;
+ &char_foot_h;
+ }
+}
+
+sub get_charwidth{
+ my ($i,$dvicode)=@_;
+ my ($char,$u,$l);
+
+ if (!$ucs) {
+ if ($dvicode>=0x2474 && $dvicode<=0x2476) {
+ return 0;
+ }
+ $u = ($dvicode >> 8) & 0xFF | 0x80;
+ $l = $dvicode & 0xFF | 0x80;
+ $char = pack("C*",$u,$l);
+ Encode::from_to($char,'euc-jp','utf-8');
+ } else {
+ $u = ($dvicode >> 8) & 0xFF;
+ $l = $dvicode & 0xFF;
+ $char = pack("C*",$u,$l);
+ Encode::from_to($char,'utf-16be','utf-8');
+ }
+ if (!exists($charwidth[$i]{$char})) {
+ return 0;
+ }
+ return ($charwidth[$i]{$char}, $cid{$char});
+}
+
+
+__DATA__
+character cid min_w3 min_w6 goth_w3 goth_w6 maru_w4
+ヽ 15449 7.11 7.54 7.19 7.49 7.45
+ヾ 15450 7.68 7.95 7.69 8 8.15
+ゝ 15451 7.17 7.43 7.23 7.53 7.63
+ゞ 15452 7.79 7.97 7.72 8.09 8.08
+ー 15455 9.9 10 10 10 10
+ぁ 15517 8.21 8.44 8.56 8.77 8.72
+あ 15518 8.83 9.17 9.18 9.41 9.32
+ぃ 15519 8.56 8.72 8.67 8.95 8.97
+い 15520 9.14 9.46 9.3 9.52 9.58
+ぅ 15521 7.3 7.65 8.08 8.27 8.32
+う 15522 7.68 8.04 8.51 8.74 8.78
+ぇ 15523 7.97 8.2 8.34 8.56 8.61
+え 15524 8.69 8.95 9.14 9.33 9.36
+ぉ 15525 8.59 8.9 8.77 9.02 8.97
+お 15526 9.15 9.52 9.37 9.62 9.54
+か 15527 9.53 9.81 9.49 9.72 9.58
+が 15528 9.69 9.93 9.68 9.82 9.79
+き 15529 8.34 8.64 8.87 9.09 9.15
+ぎ 15530 9.09 9.42 9.49 9.49 9.66
+く 15531 6.76 7.04 7.64 7.92 8.04
+ぐ 15532 8.31 8.52 8.34 8.5 8.72
+け 15533 9.07 9.35 9.16 9.37 9.39
+げ 15534 9.56 9.75 9.66 9.82 9.78
+こ 15535 8.05 8.3 8.37 8.65 8.88
+ご 15536 8.91 9.08 8.9 9 9.27
+さ 15537 8.26 8.61 8.71 9.02 9.03
+ざ 15538 9.19 9.53 8.97 9.3 9.34
+し 15539 8.07 8.51 8.58 8.84 8.91
+じ 15540 8.17 8.62 8.65 8.94 9
+す 15541 9.16 9.44 9.17 9.33 9.41
+ず 15542 9.52 9.63 9.53 9.66 9.72
+せ 15543 9.52 9.76 9.44 9.65 9.61
+ぜ 15544 9.79 9.92 9.73 9.86 9.87
+そ 15545 8.59 8.93 9.27 9.48 9.43
+ぞ 15546 9.25 9.49 9.4 9.64 9.69
+た 15547 8.94 9.25 9.22 9.45 9.37
+だ 15548 9.23 9.44 9.28 9.51 9.57
+ち 15549 8.5 8.77 8.83 9.05 9.11
+ぢ 15550 8.98 9.25 8.92 9.16 9.28
+っ 15551 8.81 8.97 8.66 8.84 8.83
+つ 15552 9.39 9.71 9.26 9.41 9.44
+づ 15553 9.65 9.8 9.54 9.68 9.71
+て 15554 8.91 9.11 8.93 9.12 9.25
+で 15555 9.3 9.5 9.26 9.42 9.5
+と 15556 7.62 7.89 8.3 8.62 8.66
+ど 15557 8.45 8.72 8.56 8.78 8.88
+な 15558 9.08 9.42 9.45 9.66 9.55
+に 15559 8.94 9.18 9.16 9.42 9.38
+ぬ 15560 9.41 9.67 9.51 9.72 9.62
+ね 15561 9.51 9.73 9.67 9.82 9.83
+の 15562 9.29 9.57 9.35 9.69 9.58
+は 15563 9.13 9.45 9.44 9.69 9.56
+ば 15564 9.69 9.79 9.73 9.85 9.8
+ぱ 15565 9.58 9.77 9.66 9.8 9.75
+ひ 15566 8.98 9.33 9.26 9.52 9.52
+び 15567 9.27 9.49 9.48 9.71 9.62
+ぴ 15568 9.33 9.53 9.39 9.63 9.63
+ふ 15569 9.19 9.44 9.4 9.62 9.52
+ぶ 15570 9.33 9.59 9.61 9.78 9.74
+ぷ 15571 9.36 9.59 9.51 9.73 9.74
+へ 15572 9.71 9.97 9.69 9.76 9.73
+べ 15573 9.54 9.84 9.64 9.76 9.72
+ぺ 15574 9.51 9.82 9.5 9.73 9.69
+ほ 15575 9.14 9.49 9.48 9.73 9.62
+ぼ 15576 9.73 9.9 9.79 9.88 9.93
+ぽ 15577 9.77 9.92 9.72 9.9 9.88
+ま 15578 8.32 8.62 8.98 9.24 9.28
+み 15579 9.07 9.38 9.38 9.62 9.57
+む 15580 9.22 9.57 9.33 9.52 9.48
+め 15581 9.03 9.36 9.27 9.54 9.48
+も 15582 8.08 8.34 8.82 9.1 9.15
+ゃ 15583 8.68 8.93 8.72 8.9 8.9
+や 15584 9.38 9.62 9.25 9.49 9.46
+ゅ 15585 8.74 8.95 8.78 8.98 9
+ゆ 15586 9.33 9.64 9.41 9.63 9.62
+ょ 15587 7.64 7.85 8.09 8.36 8.45
+よ 15588 8.1 8.41 8.63 8.95 9.04
+ら 15589 8.14 8.39 8.59 8.81 8.94
+り 15590 7.69 8.09 8.33 8.59 8.71
+る 15591 8.2 8.55 8.86 9.11 9.12
+れ 15592 9.76 9.96 9.62 9.82 9.81
+ろ 15593 8.38 8.63 8.7 8.94 9.09
+ゎ 15594 8.58 8.83 8.82 9.07 9.02
+わ 15595 9.24 9.58 9.46 9.71 9.66
+ゐ 15596 8.77 9.12 9.02 9.29 9.35
+ゑ 15597 9.14 9.32 9.34 9.53 9.5
+を 15598 8.78 9.14 9.05 9.33 9.45
+ん 15599 9.13 9.39 9.2 9.47 9.39
+ァ 15608 8.01 8.28 8.37 8.61 8.5
+ア 15609 8.69 9.01 9 9.24 9.17
+ィ 15610 7.6 7.78 8.26 8.44 8.33
+イ 15611 8.2 8.43 8.91 9.13 8.96
+ゥ 15612 7.89 8.24 8.4 8.61 8.72
+ウ 15613 8.4 8.67 8.81 9.06 9.18
+ェ 15614 8.44 8.63 8.63 8.83 8.73
+エ 15615 9.23 9.5 9.36 9.52 9.36
+ォ 15616 8.34 8.57 8.66 8.88 8.69
+オ 15617 8.94 9.26 9.18 9.39 9.32
+カ 15618 8.64 8.9 9.04 9.33 9.23
+ガ 15619 9.39 9.53 9.37 9.53 9.55
+キ 15620 8.76 9.19 9.27 9.45 9.34
+ギ 15621 9.05 9.4 9.31 9.54 9.55
+ク 15622 8.25 8.6 8.68 8.96 8.9
+グ 15623 9.06 9.37 9.55 9.57 9.67
+ケ 15624 8.84 9.05 9.28 9.43 9.41
+ゲ 15625 9.28 9.42 9.52 9.66 9.69
+コ 15626 8.49 8.83 8.88 9.15 9.16
+ゴ 15627 9.1 9.3 9.4 9.59 9.55
+サ 15628 9.16 9.44 9.26 9.42 9.46
+ザ 15629 9.46 9.68 9.62 9.72 9.8
+シ 15630 9.02 9.22 8.94 9.22 9.32
+ジ 15631 8.99 9.22 9.42 9.5 9.74
+ス 15632 8.68 8.96 9.06 9.32 9.25
+ズ 15633 9.24 9.48 9.5 9.73 9.67
+セ 15634 9.02 9.4 9.17 9.36 9.33
+ゼ 15635 9.44 9.71 9.54 9.63 9.63
+ソ 15636 8.23 8.49 8.47 8.76 8.8
+ゾ 15637 9.13 9.3 9.04 9.19 9.44
+タ 15638 8.41 8.78 8.75 9 8.95
+ダ 15639 9.32 9.56 9.67 9.65 9.73
+チ 15640 8.91 9.27 9.25 9.48 9.36
+ヂ 15641 9.36 9.64 9.55 9.63 9.61
+ッ 15642 7.86 8.12 8.15 8.4 8.48
+ツ 15643 8.44 8.73 8.86 9.13 9.04
+ヅ 15644 9.24 9.43 9.41 9.53 9.57
+テ 15645 8.85 9.2 9.22 9.38 9.33
+デ 15646 9.37 9.58 9.64 9.67 9.74
+ト 15647 7.25 7.6 8.02 8.3 8.57
+ド 15648 7.95 8.16 8.26 8.48 8.7
+ナ 15649 8.84 9.22 9.13 9.32 9.26
+ニ 15650 9.21 9.52 9.23 9.42 9.22
+ヌ 15651 8.11 8.42 8.46 8.7 8.79
+ネ 15652 9 9.27 9.23 9.46 9.4
+ノ 15653 7.81 8.17 8.4 8.7 8.66
+ハ 15654 9.46 9.77 9.45 9.66 9.41
+バ 15655 9.58 9.76 9.63 9.78 9.56
+パ 15656 9.45 9.71 9.53 9.75 9.55
+ヒ 15657 8.14 8.42 8.6 8.88 8.84
+ビ 15658 8.76 9 9.23 9.41 9.46
+ピ 15659 8.66 8.9 9.15 9.33 9.4
+フ 15660 8.12 8.46 8.57 8.81 8.91
+ブ 15661 9.05 9.3 9.27 9.42 9.73
+プ 15662 9.05 9.27 9.11 9.31 9.73
+ヘ 15663 9.68 9.95 9.62 9.77 9.66
+ベ 15664 9.44 9.77 9.56 9.73 9.62
+ペ 15665 9.42 9.77 9.56 9.71 9.59
+ホ 15666 8.85 9.19 9.46 9.67 9.52
+ボ 15667 9.14 9.39 9.51 9.71 9.69
+ポ 15668 8.81 9.24 9.5 9.72 9.71
+マ 15669 8.86 9.17 8.99 9.19 9.17
+ミ 15670 7.57 7.9 8.39 8.64 8.87
+ム 15671 8.56 8.87 9.2 9.4 9.39
+メ 15672 8.2 8.55 8.64 8.92 8.81
+モ 15673 9.09 9.41 9.42 9.61 9.49
+ャ 15674 8.39 8.69 8.49 8.73 8.73
+ヤ 15675 8.95 9.24 9.16 9.39 9.31
+ュ 15676 8.38 8.61 8.43 8.65 8.61
+ユ 15677 9.18 9.57 9.22 9.37 9.35
+ョ 15678 7.94 8.23 8.44 8.72 8.74
+ヨ 15679 8.37 8.74 8.91 9.19 9.22
+ラ 15680 8.08 8.41 8.71 8.97 8.95
+リ 15681 7.6 7.91 8.16 8.43 8.63
+ル 15682 9.27 9.69 9.46 9.64 9.49
+レ 15683 8.46 8.8 8.61 8.9 9.01
+ロ 15684 8.51 8.95 9.26 9.51 9.54
+ヮ 15685 7.77 8.09 8.32 8.51 8.71
+ワ 15686 8.34 8.67 8.71 8.97 9.02
+ヰ 15687 9.19 9.5 9.47 9.64 9.57
+ヱ 15688 9.19 9.51 9.32 9.52 9.35
+ヲ 15689 8.01 8.39 8.49 8.76 8.93
+ン 15690 8.71 9.03 8.85 9.12 9.04
+ヴ 15691 9.06 9.34 9.33 9.51 9.66
+ヵ 15692 8.11 8.33 8.51 8.8 8.74
+ヶ 15693 8.18 8.39 8.63 8.74 8.73
+〃 15453 7.69 8.15 8.29 8.62 8.36
+〆 15454 8.69 9.03 9.09 9.33 9.15
+ヿ 15462 8.09 8.42 8.6 8.83 8.87
+ゟ 15463 8.03 8.27 8.82 9.19 8.93
+ゔ 15600 8.73 9.06 9.27 9.47 9.44
+ゕ 15601 8.75 9.02 8.82 9.06 8.95
+ゖ 15602 8.36 8.64 8.55 8.78 8.73
+ㇰ 15702 7.68 8.03 8.02 8.34 8.43
+ㇱ 15703 8.39 8.58 8.43 8.67 8.66
+ㇲ 15704 8 8.19 8.3 8.59 8.55
+ㇳ 15705 7.02 7.29 7.66 7.9 8.16
+ㇴ 15706 7.65 7.89 8.04 8.35 8.38
+ㇵ 15707 8.6 8.79 8.61 8.84 8.63
+ㇶ 15708 7.83 8.02 8.15 8.43 8.41
+ㇷ 15709 7.61 7.94 8.09 8.3 8.39
+ㇸ 15710 8.81 9.1 8.78 8.94 8.83
+ㇹ 15711 8.27 8.53 8.86 9.09 8.97
+ㇺ 15713 7.92 8.13 8.39 8.61 8.62
+ㇻ 15714 7.8 8.09 8.32 8.54 8.55
+ㇼ 15715 7.39 7.66 7.9 8.13 8.31
+ㇽ 15716 8.59 8.79 8.72 8.9 8.81
+ㇾ 15717 8.06 8.32 8.18 8.41 8.55
+ㇿ 15718 8.13 8.44 8.67 8.93 8.98
+ヷ 15719 9.2 9.51 9.64 9.6 9.81
+ヸ 15720 9.41 9.75 9.6 9.7 9.75
+ヹ 15721 9.47 9.7 9.65 9.7 9.8
+ヺ 15722 8.91 9.32 9.34 9.39 9.73
+end
diff --git a/language/japanese/japanese-otf-uptex/script/umkvpkana.pl b/language/japanese/japanese-otf-uptex/script/umkvpkana.pl
new file mode 100755
index 0000000000..f1ff477518
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/script/umkvpkana.pl
@@ -0,0 +1,568 @@
+#!/usr/bin/perl -s
+
+=head1 NOTE
+
+This software is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+
+=cut
+
+use Encode;
+use FindBin;
+use lib "$FindBin::Bin";
+use CheckDVICode;
+
+if ($sp==1) { # supplemental plane
+ use MakeSPList;
+ &make_sp_char_list('j');
+ %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
+}
+
+$_=<DATA>;
+while(<DATA>) {
+ chomp($_);
+ my (@data)=split(' ', $_);
+ my ($char);
+ last if (@data<6);
+ $char = shift @data;
+ push @character, $char;
+ $cid {$char}=shift @data;
+ $min_w3 {$char}=shift @data;
+ $min_w6 {$char}=shift @data;
+ $goth_w3{$char}=shift @data;
+ $goth_w6{$char}=shift @data;
+ $maru_w4{$char}=shift @data;
+}
+
+@charwidth=({%min_w3}, {%min_w6}, {%goth_w3}, {%goth_w6}, {%maru_w4});
+@font_name=("phiraminw3-v", "phiraminw6-v", "phirakakuw3-v", "phirakakuw6-v", "phiramaruw4-v");
+@kanji_font_name=("hminr-v", "hminb-v", "hgothr-v", "hgothb-v", "hmgothr-v");
+@kana_font_name=("hiramin-w3-v", "hiramin-w6-v", "hirakaku-w3-v", "hirakaku-w6-v", "hiramaru-w4-v");
+$font_at=1.0;
+$half_width= ($font_at / 2);
+$quater_width= ($font_at / 4);
+opendir(OVP, "ovp") || mkdir("ovp",0755) || die "cannot mkdir ovp";
+opendir(VF, "vf") || mkdir("vf",0755) || die "cannot mkdir vf";
+opendir(JPL, "pl") || mkdir("pl",0755) || die "cannot mkdir pl";
+opendir(JFM, "tfm") || mkdir("tfm",0755) || die "cannot mkdir tfm";
+closedir(OVP);
+closedir(VF);
+closedir(JPL);
+closedir(JFM);
+
+$ucs=1; # 1: upphiraXXX or 0: phiraXXX
+if ($ucs) {
+ $CheckDVICode::is_ucs=1;
+ foreach(@font_name, @kanji_font_name) {
+ $_="up$_";
+ }
+}
+
+#main
+for ($i=0; $i<=4; $i++){
+ open (JPL, ">pl/$font_name[$i].pl");
+ &tfm_head_v;
+ &chars_in_type_jis;
+ &chars_in_type_prop;
+ &print_type_jis;
+ &print_type_prop;
+ &glue_kern;
+ close(JPL);
+}
+for ($i=0; $i<=4; $i++){
+ @cpm_v= $ucs ? (0x2F8D, 0x2F8E, 0x1F14, 0x1F15, 0x1ECF, 0x1ED0)
+ : (0x1ECF, 0x1ED0, 0x2F8D, 0x2F8E, 0x1F14, 0x1F15);
+ open (OVP, ">ovp/$font_name[$i].ovp");
+ &fonthead;
+ &write_char;
+ close(OVP);
+}
+#
+#sub rtn
+#
+sub tfm_head_v {
+ print JPL "(DIRECTION TATE)\n";
+ print JPL "(FAMILY PROP KANA)\n";
+ print JPL "(FACE F MRR)\n";
+ print JPL "(CODINGSCHEME TEX KANJI TEXT)\n";
+ print JPL "(DESIGNSIZE R 10.0)\n";
+ print JPL "(CHECKSUM O 0)\n";
+ print JPL "(SEVENBITSAFEFLAG TRUE)\n";
+ print JPL "(FONTDIMEN\n";
+ print JPL " (SLANT R 0.0)\n";
+ print JPL " (SPACE R 0.0)\n";
+ printf JPL " (STRETCH R %f)\n", $font_at/10;
+ print JPL " (SHRINK R 0.0)\n";
+ printf JPL " (XHEIGHT R %f)\n", $font_at;
+ printf JPL " (QUAD R %f)\n", $font_at;
+ printf JPL " (EXTRASPACE R %f)\n", $font_at/4;
+ printf JPL " (EXTRASTRETCH R %f)\n", $font_at/5;
+ printf JPL " (EXTRASHRINK R %f)\n", $font_at/8;
+ print JPL " )\n";
+}
+sub char_foot_h {
+ printf JPL " (CHARHT R %f)\n", $font_at*0.88;
+ printf JPL " (CHARDP R %f)\n", $font_at*0.12;
+ print JPL " )\n";
+}
+sub glue_kern{
+ print JPL "(GLUEKERN\n";
+ print JPL " (LABEL O 5)\n";
+ print JPL " (KRN O 5 R 0.0)\n";
+ print JPL " (LABEL O 0)\n";
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (LABEL H %X)\n",($char+7);
+ }
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ print JPL " (LABEL O 1)\n";
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 2)\n";
+ printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 6)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $half_width, $half_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+7), $half_width, $half_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 4)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width+$quater_width, $quater_width;
+ printf JPL " (GLUE O 5 R %f R 0.0 R 0.0)\n", $half_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R 0.0)\n", $half_width;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R 0.0)\n",($char+7), $half_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " (LABEL O 3)\n";
+ printf JPL " (GLUE O 0 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 1 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 2 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 3 R %f R 0.0 R %f)\n", $half_width, $quater_width;
+ printf JPL " (GLUE O 4 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 5 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ printf JPL " (GLUE O 6 R %f R 0.0 R %f)\n", $quater_width, $quater_width;
+ for ($char=0; $char<=$#uniq_char_width_array; $char++){
+ printf JPL " (GLUE H %X R %f R 0.0 R %f)\n",($char+7), $quater_width, $quater_width;
+ }
+ print JPL " (STOP)\n";
+ print JPL " )\n";
+}
+sub chars_in_type_jis{
+ my ($type1add, $type2add, $type3add, $type5, $type6add)=();
+ if ($ucs) {
+ $type1add = "UFF5F U3018 U3016 U301D U00AB U2329 U301A";
+ $type2add = "UFF60 U3019 U3017 U301F U00BB U232A U301B U301E";
+ $type3add = "U00B7";
+ $type5 = "— ― … ‥";
+ $type6add = "U203C U2047 U2048 U2049";
+ } else {
+ $type5 = "— … ‥";
+ }
+print JPL <<END_OF_DATA;
+(CHARSINTYPE O 1
+ ‘ “ ( 〔 [ { 〈 《 「 『 【
+ $type1add
+ )
+(CHARSINTYPE O 2
+ 、 , ’ ” ) 〕 ] } 〉 》 」 』 】
+ $type2add
+ )
+(CHARSINTYPE O 3
+ ・ : ;
+ $type3add
+ )
+(CHARSINTYPE O 4
+ 。 .
+ )
+(CHARSINTYPE O 5
+ $type5
+ )
+(CHARSINTYPE O 6
+ ? !
+ $type6add
+ )
+END_OF_DATA
+}
+sub print_type_jis{
+ @type_width=($font_at, $half_width, $half_width, $half_width, $half_width, $font_at, $font_at);
+ for ($k=0; $k<=6; $k++){
+ printf JPL "(TYPE H %x\n", $k;
+ printf JPL " (CHARWD R %f)\n", $type_width[$k];
+ &char_foot_h;
+ }
+}
+sub fonthead {
+ print OVP "(VTITLE Prop Kana)\n";
+ print OVP "(OFMLEVEL D 0)\n";
+ print OVP "(DESIGNSIZE R 10.000000)\n";
+ print OVP "(CHECKSUM O 0)\n";
+ print OVP "(MAPFONT D 1\n";
+ print OVP " (FONTNAME $kanji_font_name[$i])\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n", $font_at;
+ print OVP " (FONTDSIZE R 10.000000)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $kana_font_name[$i])\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n", $font_at;
+ print OVP " (FONTDSIZE R 10.000000)\n";
+ print OVP " )\n";
+}
+sub write_char {
+ if (!$ucs) {
+ for ($ku=1; $ku<=94; $ku++){
+ for ($ten=1; $ten<=94; $ten++){
+ $dvicode=($ku+32)*256+($ten+32);
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
+ elsif($ku==5){&print_kana_char;}else{&print_char;}
+ }
+ }
+ } else { # ucs
+ $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
+ for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
+ $CheckDVICode::dvicode=$dvicode=$ucscode;
+ next unless (&is_ucs_jpn_range);
+ if ($sp==1 && $ucscode>0xFFFF) {
+ next unless ($exist_char{sprintf("%X",$ucscode)});
+ }
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira || &is_dvicode('hira-yori')){&print_kana_char;}
+ elsif(&is_ucs_kata || &is_dvicode('kata-koto')){&print_kana_char;}
+# elsif(&is_ucs_hankana && $hk_mode){&print_hankana_char;}
+ else{&print_char;}
+ }
+ }
+}
+sub print_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SETCHAR H %X)\n",$dvicode;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_kigo_char{
+ my ($width,$cid);
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
+ $width=$half_width;
+ } elsif (&is_dvicode('kutouten')){#Kutouten
+ $width=$half_width;
+ } elsif (&is_dvicode('odoriji')){#odoriji
+ ($width,$cid)=&get_charwidth($i,$dvicode);
+ $width/=10;
+ } else{
+ $width=$font_at;
+ }
+ printf OVP " (CHARWD R %f)\n", $width;
+ print OVP " (MAP\n";
+ if (&is_dvicode('odoriji')){#odoriji
+ print OVP " (SELECTFONT D 2)\n";
+ } elsif (&is_dvicode('comma') || &is_dvicode('period') || &is_dvicode('quote')){#Comma, Period, Minute
+ print OVP " (SELECTFONT D 2)\n";
+ }
+ if (&is_dvicode('nakaten') || &is_dvicode('colon') || &is_dvicode('semicolon')){#colon, semicolon, nakaten
+ printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
+ if ((&is_dvicode('quote') || &is_dvicode('kakko')) && &is_dvicode('open')){#Kakko
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ if (&is_dvicode('odoriji')){#odoriji
+ printf OVP " (SETCHAR H %X)\n",$cid;
+ } elsif (&is_dvicode('comma') || &is_dvicode('period') || &is_dvicode('quote')){#Comma, Period, Minute
+ $cpmcode= shift(@cpm_v);
+ printf OVP " (SETCHAR H %X)\n",$cpmcode;
+ } else {
+ printf OVP " (SETCHAR H %X)\n",$dvicode;
+ }
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_kana_char{
+ my ($width,$cid)=&get_charwidth($i,$dvicode);
+ if ($width==0) {
+ return &print_char;
+ }
+ $width/=10;
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $width;
+ print OVP " (MAP\n";
+ print OVP " (SELECTFONT D 2)\n";
+ printf OVP " (SETCHAR H %X)\n",$cid;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub chars_in_type_prop{
+ %char_width_hash=();
+ for ($j=0; $j<@character; $j++){
+ my ($c0, $c1);
+ $c0=$c1=$character[$j];
+ if (!$ucs) {
+ if (!Encode::from_to($c1,'utf-8','euc-jp', Encode::FB_QUIET)
+ || $c0 eq "〃"
+ || $c0 eq "〆") { next; }
+ }
+ $char_width_hash{$c0}=$charwidth[$i]{$c0}/10;
+ }
+ $x = '-';
+ @uniq_char_width_array = grep( $_ ne $x && ($x = $_), sort values(%char_width_hash));
+ for ($j=0; $j<=$#uniq_char_width_array; $j++){
+ printf JPL "(CHARSINTYPE H %X\n",($j+7);
+ print JPL " ";
+ @char_in_this_type = ();
+ while (($name, $value) = each(%char_width_hash)) {
+ if ($value == $uniq_char_width_array[$j]){
+ push(@char_in_this_type, $name);
+ }
+ }
+ @char_in_this_type = sort @char_in_this_type;
+ foreach $char_in_this(@char_in_this_type){
+ print JPL "$char_in_this ";#character
+ }
+ print JPL "\n";
+ print JPL " )\n";
+ }
+}
+sub print_type_prop{
+ for ($j=0; $j<=$#uniq_char_width_array; $j++){
+ $char_width=$uniq_char_width_array[$j];
+ printf JPL "(TYPE H %X\n", ($j+7);
+ printf JPL " (CHARWD R %f)\n", $char_width;
+ &char_foot_h;
+ }
+}
+
+sub get_charwidth{
+ my ($i,$dvicode)=@_;
+ my ($char,$u,$l);
+
+ if (!$ucs) {
+ if ($dvicode>=0x2474 && $dvicode<=0x2476) {
+ return 0;
+ }
+ $u = ($dvicode >> 8) & 0xFF | 0x80;
+ $l = $dvicode & 0xFF | 0x80;
+ $char = pack("C*",$u,$l);
+ Encode::from_to($char,'euc-jp','utf-8');
+ } else {
+ $u = ($dvicode >> 8) & 0xFF;
+ $l = $dvicode & 0xFF;
+ $char = pack("C*",$u,$l);
+ Encode::from_to($char,'utf-16be','utf-8');
+ }
+ if (!exists($charwidth[$i]{$char})) {
+ return 0;
+ }
+ return ($charwidth[$i]{$char}, $cid{$char});
+}
+
+
+__DATA__
+character cid min_w3 min_w6 goth_w3 goth_w6 maru_w4
+ヽ 15976 7.17 7.46 7.92 8.27 8.13
+ヾ 15977 8.34 8.44 8.46 8.62 8.5
+ゝ 15978 7.77 7.98 8.44 8.69 8.62
+ゞ 15979 8.32 8.54 8.8 8.92 8.98
+ー 15982 9.96 9.98 9.99 9.99 9.98
+ぁ 15985 9.03 9.15 9.01 9.18 9.17
+あ 15986 9.6 9.79 9.6 9.77 9.75
+ぃ 15987 7.75 7.92 8.09 8.4 8.59
+い 15988 8.19 8.47 8.46 8.8 8.83
+ぅ 15989 9.42 9.47 8.97 9.2 9.19
+う 15990 9.98 9.99 9.58 9.8 9.79
+ぇ 15991 8.89 9.12 8.84 9.15 9.05
+え 15992 9.47 9.74 9.42 9.7 9.59
+ぉ 15993 8.65 8.89 8.86 9.06 9.08
+お 15994 9.14 9.48 9.39 9.67 9.61
+か 15995 8.99 9.24 9.26 9.47 9.45
+が 15996 9.1 9.39 9.41 9.67 9.6
+き 15997 9.71 9.93 9.73 9.88 9.82
+ぎ 15998 9.71 9.86 9.8 9.96 9.92
+く 15999 9.99 9.99 9.56 9.77 9.47
+ぐ 16000 9.79 9.98 9.49 9.7 9.5
+け 16001 9.52 9.64 9.54 9.79 9.66
+げ 16002 9.76 9.82 9.56 9.76 9.62
+こ 16003 9.26 9.47 9.38 9.67 9.57
+ご 16004 9.44 9.6 9.23 9.6 9.49
+さ 16005 9.67 9.84 9.67 9.85 9.77
+ざ 16006 9.71 9.85 9.86 9.97 9.95
+し 16007 9.42 9.53 9.38 9.53 9.53
+じ 16008 9.63 9.74 9.71 9.86 9.72
+す 16009 9.39 9.61 9.3 9.55 9.43
+ず 16010 9.61 9.83 9.6 9.84 9.68
+せ 16011 9.18 9.45 9.44 9.7 9.54
+ぜ 16012 9.47 9.66 9.53 9.79 9.63
+そ 16013 9.45 9.66 9.4 9.65 9.57
+ぞ 16014 9.56 9.74 9.43 9.65 9.59
+た 16015 9.23 9.47 9.39 9.59 9.59
+だ 16016 9.48 9.68 9.59 9.81 9.72
+ち 16017 9.61 9.78 9.63 9.81 9.68
+ぢ 16018 9.67 9.8 9.85 9.97 9.92
+っ 16019 7.96 8.04 8.23 8.47 8.6
+つ 16020 8.24 8.42 8.62 8.87 8.98
+づ 16021 8.99 9.15 9.26 9.44 9.42
+て 16022 8.69 8.92 8.89 9.19 9.16
+で 16023 8.76 8.95 8.92 9.19 9.23
+と 16024 9.75 9.89 9.59 9.82 9.65
+ど 16025 9.69 9.89 9.81 9.96 9.93
+な 16026 9.48 9.66 9.48 9.65 9.62
+に 16027 8.95 9.17 9.19 9.42 9.4
+ぬ 16028 8.98 9.23 9.34 9.57 9.49
+ね 16029 9.25 9.54 9.52 9.68 9.62
+の 16030 8.82 8.99 9.02 9.28 9.24
+は 16031 9.28 9.55 9.5 9.75 9.66
+ば 16032 9.57 9.76 9.67 9.82 9.76
+ぱ 16033 9.7 9.82 9.84 9.97 9.92
+ひ 16034 9.19 9.36 9.18 9.4 9.41
+び 16035 9.46 9.64 9.4 9.61 9.61
+ぴ 16036 9.72 9.8 9.71 9.79 9.81
+ふ 16037 9.05 9.39 9.25 9.5 9.46
+ぶ 16038 9.16 9.47 9.29 9.54 9.49
+ぷ 16039 9.15 9.43 9.33 9.53 9.52
+へ 16040 7.21 7.43 7.84 8.2 8.32
+べ 16041 8.13 8.33 8.21 8.52 8.58
+ぺ 16042 8.43 8.58 8.56 8.84 8.78
+ほ 16043 9.23 9.46 9.45 9.71 9.67
+ぼ 16044 9.61 9.74 9.65 9.89 9.79
+ぽ 16045 9.65 9.81 9.7 9.9 9.87
+ま 16046 9.76 9.88 9.57 9.74 9.64
+み 16047 9.17 9.36 9.24 9.48 9.38
+む 16048 9.37 9.58 9.49 9.71 9.64
+め 16049 9.18 9.41 9.38 9.58 9.53
+も 16050 9.76 9.91 9.48 9.68 9.6
+ゃ 16051 8.69 8.83 8.89 9.1 8.99
+や 16052 9.38 9.54 9.52 9.7 9.62
+ゅ 16053 8.73 8.82 8.88 9.08 9.03
+ゆ 16054 9.22 9.4 9.4 9.63 9.58
+ょ 16055 8.95 9.17 9.03 9.28 9.09
+よ 16056 9.63 9.83 9.63 9.82 9.61
+ら 16057 9.66 9.82 9.5 9.74 9.79
+り 16058 9.82 9.85 9.75 9.88 9.79
+る 16059 9.59 9.8 9.55 9.77 9.7
+れ 16060 9.21 9.43 9.4 9.59 9.55
+ろ 16061 9.66 9.79 9.55 9.79 9.73
+ゎ 16062 8.58 8.73 8.71 8.93 8.86
+わ 16063 9.28 9.45 9.38 9.54 9.54
+ゐ 16064 9.37 9.59 9.46 9.68 9.57
+ゑ 16065 9.65 9.82 9.64 9.86 9.8
+を 16066 9.64 9.79 9.62 9.83 9.71
+ん 16067 9.2 9.4 9.32 9.54 9.45
+ァ 16076 8.45 8.5 8.55 8.76 8.92
+ア 16077 8.96 9.2 9.19 9.44 9.41
+ィ 16078 8.81 8.92 8.63 8.88 8.75
+イ 16079 9.29 9.46 9.28 9.48 9.35
+ゥ 16080 8.89 8.93 8.82 9.03 8.94
+ウ 16081 9.38 9.56 9.4 9.59 9.46
+ェ 16082 7.81 8.04 8.33 8.65 8.84
+エ 16083 8.12 8.39 8.77 9.06 9.3
+ォ 16084 8.76 8.84 8.76 8.99 8.9
+オ 16085 9.21 9.41 9.29 9.51 9.38
+カ 16086 9.26 9.48 9.46 9.68 9.52
+ガ 16087 9.27 9.5 9.66 9.79 9.71
+キ 16088 9.25 9.41 9.4 9.6 9.39
+ギ 16089 9.56 9.65 9.78 9.87 9.78
+ク 16090 9.25 9.37 9.33 9.53 9.44
+グ 16091 9.49 9.57 9.39 9.69 9.66
+ケ 16092 9.19 9.32 9.14 9.35 9.37
+ゲ 16093 9.6 9.65 9.47 9.59 9.64
+コ 16094 8.32 8.59 9.13 9.4 9.4
+ゴ 16095 8.83 9.13 9.52 9.78 9.7
+サ 16096 9.17 9.37 9.34 9.53 9.49
+ザ 16097 9.53 9.65 9.39 9.58 9.62
+シ 16098 8.39 8.61 8.88 9.11 9.53
+ジ 16099 9.1 9.21 9.31 9.39 9.84
+ス 16100 8.61 8.85 9 9.3 9.22
+ズ 16101 9.24 9.44 9.44 9.68 9.58
+セ 16102 8.67 8.93 9.17 9.43 9.4
+ゼ 16103 9.26 9.4 9.63 9.78 9.78
+ソ 16104 8.89 9.06 8.98 9.21 9.12
+ゾ 16105 9.52 9.64 9.56 9.63 9.61
+タ 16106 9.31 9.42 9.41 9.6 9.56
+ダ 16107 9.56 9.61 9.53 9.74 9.76
+チ 16108 9.2 9.4 9.14 9.39 9.31
+ヂ 16109 9.35 9.51 9.18 9.4 9.34
+ッ 16110 8.33 8.43 8.55 8.77 8.77
+ツ 16111 8.8 8.97 9.01 9.26 9.2
+ヅ 16112 9.48 9.61 9.5 9.64 9.7
+テ 16113 9.13 9.34 9.28 9.5 9.45
+デ 16114 9.38 9.62 9.27 9.51 9.64
+ト 16115 9.58 9.74 9.35 9.51 9.33
+ド 16116 9.63 9.75 9.45 9.68 9.62
+ナ 16117 9.11 9.35 9.08 9.37 9.31
+ニ 16118 8.01 8.31 8.62 8.93 9.17
+ヌ 16119 9.06 9.33 9.17 9.43 9.44
+ネ 16120 9.45 9.64 9.53 9.73 9.49
+ノ 16121 8.8 9.13 8.77 9.02 8.92
+ハ 16122 7.42 7.65 8.71 9 8.97
+バ 16123 8.16 8.44 8.82 9.07 9.34
+パ 16124 8.55 8.74 9.09 9.23 9.44
+ヒ 16125 8.79 9.06 9.33 9.51 9.46
+ビ 16126 9.2 9.35 9.7 9.83 9.74
+ピ 16127 9.39 9.55 9.83 9.92 9.89
+フ 16128 8.91 9.06 9.01 9.29 9.28
+ブ 16129 9.47 9.63 9.58 9.74 9.61
+プ 16130 9.56 9.67 9.31 9.51 9.72
+ヘ 16131 7.09 7.38 7.79 8.15 8.32
+ベ 16132 8.05 8.32 8.3 8.5 8.59
+ペ 16133 8.35 8.58 8.47 8.85 8.86
+ホ 16134 9.07 9.32 9.47 9.71 9.5
+ボ 16135 9.39 9.58 9.74 9.9 9.8
+ポ 16136 9.64 9.73 9.83 9.98 9.92
+マ 16137 8.1 8.38 8.95 9.19 9.16
+ミ 16138 9.25 9.47 9.25 9.51 9.4
+ム 16139 8.79 9.1 9.19 9.42 9.33
+メ 16140 8.88 9.18 8.95 9.18 9.15
+モ 16141 8.74 9 9.25 9.46 9.47
+ャ 16142 8.52 8.68 8.79 8.94 8.88
+ヤ 16143 8.98 9.19 9.37 9.53 9.41
+ュ 16144 7.76 7.99 8.31 8.62 8.79
+ユ 16145 8.09 8.33 8.7 9.01 9.25
+ョ 16146 8.38 8.55 8.83 9.11 9.19
+ヨ 16147 8.8 9.05 9.38 9.62 9.73
+ラ 16148 9.29 9.47 9.35 9.64 9.61
+リ 16149 9.75 9.89 9.64 9.84 9.69
+ル 16150 8.5 8.83 9.33 9.58 9.42
+レ 16151 8.35 8.71 9 9.18 9.17
+ロ 16152 8.42 8.71 9.23 9.47 9.59
+ヮ 16153 8.56 8.65 8.69 8.91 8.97
+ワ 16154 9.03 9.15 9.21 9.43 9.47
+ヰ 16155 9.35 9.58 9.31 9.59 9.42
+ヱ 16156 8.34 8.65 8.95 9.25 9.41
+ヲ 16157 9.17 9.39 9.27 9.49 9.49
+ン 16158 8.11 8.3 8.51 8.78 8.79
+ヴ 16159 9.47 9.62 9.49 9.69 9.63
+ヵ 16160 8.73 8.9 8.93 9.11 9
+ヶ 16161 8.53 8.64 8.41 8.66 8.69
+〃 15980 8.16 8.40 8.74 8.90 8.88
+〆 15981 8.94 9.09 8.99 9.14 9.04
+ヿ 15983 9.36 9.59 9.59 9.75 9.74
+ゟ 15984 9.81 9.96 9.75 9.82 9.79
+ゔ 16068 9.63 9.72 9.28 9.50 9.50
+ゕ 16069 8.41 8.60 8.61 8.80 8.85
+ゖ 16070 8.90 9.03 8.92 9.13 9.11
+ㇰ 16170 8.65 8.67 8.78 8.94 8.92
+ㇱ 16171 7.86 8.08 8.25 8.46 8.51
+ㇲ 16172 8.22 8.40 8.57 8.80 8.77
+ㇳ 16173 9.01 9.06 8.81 9.03 8.74
+ㇴ 16174 8.51 8.65 8.64 8.94 8.93
+ㇵ 16175 7.14 7.31 8.29 8.56 8.58
+ㇶ 16176 8.29 8.52 8.76 9.00 8.90
+ㇷ 16177 8.42 8.50 8.52 8.75 8.81
+ㇸ 16178 6.79 7.01 7.32 7.65 7.81
+ㇹ 16179 8.57 8.77 8.83 9.04 8.96
+ㇺ 16181 8.34 8.62 8.66 8.90 8.81
+ㇻ 16182 8.80 8.86 8.84 9.09 9.09
+ㇼ 16183 9.13 9.22 8.99 9.23 9.14
+ㇽ 16184 8.02 8.30 8.71 8.97 8.89
+ㇾ 16185 7.89 8.08 8.41 8.66 8.59
+ㇿ 16186 8.11 8.24 8.71 8.98 9.04
+ヷ 16187 9.42 9.66 9.44 9.78 9.75
+ヸ 16188 9.61 9.8 9.73 9.84 9.77
+ヹ 16189 8.94 9.28 9.56 9.80 9.88
+ヺ 16190 9.54 9.71 9.67 9.82 9.74
+end
diff --git a/language/japanese/japanese-otf-uptex/sty/mlutf.sty b/language/japanese/japanese-otf-uptex/sty/mlutf.sty
new file mode 100644
index 0000000000..3cfc9e122e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/sty/mlutf.sty
@@ -0,0 +1,58 @@
+\NeedsTeXFormat{pLaTeX2e}
+\ProvidesPackage{mlutf}[2004/04/17 v1.1.2 psitau, u0.23 ttk]
+%force catcode of \" be 12
+\count@\catcode`\"
+\catcode`\"=12
+\DeclareRobustCommand{\UTFK}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{utfk}\uppercase{\set@character="#1}%
+ \endgroup%
+}
+\DeclareRobustCommand{\UTFC}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{utfc}\uppercase{\set@character="#1}%
+ \endgroup%
+}
+\DeclareRobustCommand{\UTFT}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{utft}\uppercase{\set@character="#1}%
+ \endgroup%
+}
+\DeclareRobustCommand{\UTFM}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{utf}\uppercase{\set@character="#1}%
+ \endgroup%
+}
+\catcode`\"=\count@
+%end of changing catcode of \"
+\gdef\Redefine@MLUTF{%
+ \@ifpackageloaded{hyperref}{%
+ \def\hyper@UTFC##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFC \endcsname{##1}\fi}
+ \def\hyper@UTFK##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFK \endcsname{##1}\fi}
+ \def\hyper@UTFT##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFT \endcsname{##1}\fi}
+ \def\hyper@UTFM##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTFM \endcsname{##1}\fi}
+ \def\UTFC{\protect\hyper@UTFC}
+ \def\UTFK{\protect\hyper@UTFK}
+ \def\UTFT{\protect\hyper@UTFT}
+ \def\UTFM{\protect\hyper@UTFM}
+ }{}
+}
+\AtBeginDocument{\Redefine@MLUTF}
+
+\DeclareKanjiFamily{\otf@JYn}{utfk}{}
+\DeclareKanjiFamily{\otf@JTn}{utfk}{}
+\Declare@FontShape{utfk}{m}{0123456789abcdef}{utfkmr}
+\Declare@FontShape{utfk}{bx}{0123456789abcdef}{utfkgr}
+\DeclareKanjiFamily{\otf@JYn}{utfc}{}
+\DeclareKanjiFamily{\otf@JTn}{utfc}{}
+\Declare@FontShape{utfc}{m}{0123456789abcdefklmo}{utfcmr}
+\Declare@FontShape{utfc}{bx}{0123456789abcdefklmo}{utfcgr}
+\DeclareKanjiFamily{\otf@JYn}{utft}{}
+\DeclareKanjiFamily{\otf@JTn}{utft}{}
+\Declare@FontShape{utft}{m}{0123456789abcdefklmnopqrstuvwxz}{utftmr}
+\Declare@FontShape{utft}{bx}{0123456789abcdefklmnopqrstuvwxz}{utftgr}
+\DeclareKanjiFamily{\otf@JYn}{utf}{}
+\DeclareKanjiFamily{\otf@JTn}{utf}{}
+\Declare@FontShape{utf}{m}{0123456789abcdefjklmnopqrstuvwxyz}{utfmr}
+\Declare@FontShape{utf}{bx}{0123456789abcdefjklmnopqrstuvwxyz}{utfgr}
+\endinput
diff --git a/language/japanese/japanese-otf-uptex/sty/otf.sty b/language/japanese/japanese-otf-uptex/sty/otf.sty
new file mode 100644
index 0000000000..fa4decec4b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/sty/otf.sty
@@ -0,0 +1,578 @@
+\NeedsTeXFormat{pLaTeX2e}
+\ProvidesPackage{otf}[2019/04/01 v1.7b8 psitau, u0.23 ttk]
+\RequirePackage{keyval}
+%for processing options
+\newif\if@kana \@kanafalse
+\newif\if@macro \@macrotrue
+\newif\if@deluxe \@deluxefalse
+\newif\if@replace \@replacetrue
+\newif\if@bold \@boldfalse
+\newif\if@burasage \@burasagefalse
+\newif\if@newglyph \@newglyphfalse
+\newif\if@otf@uplatex \@otf@uplatexfalse
+\newif\if@otf@autodetect \@otf@autodetectfalse
+\newif\if@otf@scale \@otf@scalefalse
+\newif\if@jsclasses \@jsclassesfalse
+
+\DeclareOption{nomacro}{\@macrofalse}
+\DeclareOption{nomacros}{\@macrofalse}
+\DeclareOption{noreplace}{\@replacefalse}
+\DeclareOption{bold}{\@replacetrue\@boldtrue}
+\DeclareOption{expert}{\@replacetrue\@kanatrue}
+\DeclareOption{deluxe}{\@boldfalse\@replacetrue\@deluxetrue}
+\DeclareOption{multi}{\AtEndOfPackage{\RequirePackage{mlutf}\RequirePackage{mlcid}}}
+\DeclareOption{burasage}{\@burasagetrue}
+\DeclareOption{uplatex}{\@otf@uplatextrue}
+\DeclareOption{autodetect-engine}{\@otf@autodetecttrue}
+\DeclareOption{jis2004}{\@newglyphtrue}
+\DeclareOption*{\otfpkg@setkey}
+\def\otfpkg@setkey{\expandafter\otfpkg@setkey@a\expandafter{\CurrentOption}}
+\def\otfpkg@setkey@a{\setkeys{otfpkg}}
+\define@key{otfpkg}{scale}{\@otf@scaletrue\def\utf@sc@le{#1}}
+
+\def\otf@JYn{\if@otf@uplatex JY2\else JY1\fi}
+\def\otf@JTn{\if@otf@uplatex JT2\else JT1\fi}
+\def\otf@OTorT{\if@otf@uplatex T\else OT\fi}
+\def\otf@pfx@{\if@otf@uplatex up\else \fi}
+\def\brsg@pfx@{\if@burasage brsg\else\fi}
+\def\nlck@sfx@{\if@newglyph n\else\fi}
+\ProcessOptions\relax
+
+% Autodetect engine
+\ifnum \ifx\ucs\@undefined\z@\else\ucs"3000 \fi ="3000 %upTeX
+ \if@otf@autodetect
+ \PackageInfo{otf}{Autodetected engine: upLaTeX}
+ \@otf@uplatextrue
+ \fi
+ \if@otf@uplatex\else
+ \PackageError{otf}
+ {You are running upLaTeX.\MessageBreak
+ Please use pLaTeX instead, or add 'uplatex' to\MessageBreak
+ the package option list}
+ {\@ehc}
+ \@otf@uplatextrue
+ \fi
+\else %pTeX
+ \if@otf@autodetect
+ \PackageInfo{otf}{Autodetected engine: pLaTeX}
+ \@otf@uplatexfalse
+ \fi
+ \if@otf@uplatex
+ \PackageError{otf}
+ {You are running pLaTeX.\MessageBreak
+ Please use upLaTeX instead, or remove 'uplatex' from\MessageBreak
+ the package option list}
+ {\@ehc}
+ \@otf@uplatexfalse
+ \fi
+\fi
+%user interface
+%force catcode of \" be 12
+\count@\catcode`\"
+\catcode`\"=12
+\if@deluxe
+ \DeclareRobustCommand{\UTF}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\edef\reserved@b{\mgdefault}%
+ \ifx\k@family\reserved@a \kanjifamily{utfjg}\else\ifx\k@family\reserved@b
+ \kanjifamily{utfjmg}\else\kanjifamily{utfj}\fi\fi%
+ \uppercase{\set@character="#1}%
+ \endgroup%
+ }
+ \DeclareRobustCommand{\CID}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\edef\reserved@b{\mgdefault}%
+ \ifx\k@family\reserved@a \kanjifamily{cidjg}\else\ifx\k@family\reserved@b
+ \kanjifamily{cidjmg}\else\kanjifamily{cidj}\fi\fi%
+ \set@character=#1%
+ \endgroup%
+ }
+\else
+ \DeclareRobustCommand{\UTF}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{utfj}\uppercase{\set@character="#1}%
+ \endgroup%
+ }
+ \DeclareRobustCommand{\CID}[1]{\begingroup%
+ \edef\reserved@a{\gtdefault}\ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily{cidj}\set@character=#1%
+ \endgroup%
+ }
+\fi
+\gdef\Redefine@UTF{\@ifpackageloaded{hyperref}{%
+ \def\hyper@UTF##1{\ifHy@pdfstring\hyper@UTF@{##1}\else\csname UTF \endcsname{##1}\fi}
+ \def\UTF{\protect\hyper@UTF}}{}
+}
+% support surrogate pair in \hyper@UTF@{} by ZR-san
+\def\otf@end{\otf@end@}
+\def\otf@mark{\otf@mark@}
+\def\otf@triexpandafter{%
+ \expandafter\expandafter\expandafter
+}
+\begingroup \catcode`\|=0
+\gdef\otf@cond#1|fi{%
+ #1\expandafter\@firstoftwo
+ |else \expandafter\@secondoftwo
+ |fi
+}
+\endgroup
+\def\otf@next#1#2#3#4#5{%
+ \@namedef{otf@qh/#1#2}{#3}%
+ \@namedef{otf@hq/#3}{#1#2}%
+ \@namedef{otf@lhq/#4#5}{#1#2}%
+}
+\@for\otf@x:={%
+ 00001,01102,02203,03304,10405,11506,12607,13708,%
+ 20809,2190A,22A0B,23B0C,30C0D,31D0E,32E0F,33F10}\do{%
+ \expandafter\otf@next\otf@x
+}
+\def\otf@next#1{%
+ \lowercase{\def\otf@y{#1}}%
+ \@namedef{otf@hd/#1}{#1}%
+ \@namedef{otf@hd/\otf@y}{#1}%
+}
+\@tfor\otf@x:=0123456789ABCDEF\do{%
+ \expandafter\otf@next\otf@x
+}
+\def\hyper@UTF@#1{%
+ \expandafter\otf@hy@utf@pre@a#1\relax{}\otf@mark\otf@end
+}
+\def\otf@hy@utf@pre@a{%
+ \expandafter\otf@hy@utf@pre@b\romannumeral-`>%
+}
+\def\otf@hy@utf@pre@b#1#{%
+ \otf@cond \ifx\otf@end#1\otf@end \fi{%
+ \otf@hy@utf@bombout
+ }{%
+ \otf@hy@utf@pre@c#1%
+ }%
+}
+\def\otf@hy@utf@pre@c#1{%
+ \otf@cond \ifx#1\relax \fi{%
+ \otf@hy@utf@pre@end
+ }{%
+ \otf@triexpandafter\otf@hy@utf@pre@d
+ \csname otf@hd/\string#1\endcsname
+ }%
+}
+\def\otf@hy@utf@pre@d#1{%
+ \otf@cond \ifx#1\relax \fi{%
+ \otf@hy@utf@bombout
+ }{%
+ \otf@hy@utf@pre@e#1%
+ }%
+}
+\def\otf@hy@utf@pre@e#1#2\otf@mark#3\otf@end{%
+ \otf@cond \if 0#1\fi{%
+ \otf@cond \ifx\otf@end#3\otf@end \fi{%
+ \otf@hy@utf@pre@f{#2}{#3}%
+ }{%
+ \otf@hy@utf@pre@f{#2}{#3#1}%
+ }%
+ }{%
+ \otf@hy@utf@pre@f{#2}{#3#1}%
+ }%
+}
+\def\otf@hy@utf@pre@f#1#2{%
+ \otf@hy@utf@pre@a#1\otf@mark#2\otf@end
+}
+\def\otf@hy@utf@pre@end#1\otf@mark#2\otf@end{%
+ \otf@cond \ifx\otf@end#1\otf@end \fi{%
+ \otf@hy@utf@sw{#2}%
+ }{%
+ \otf@hy@utf@error
+ }%
+}
+\def\otf@hy@utf@bombout#1\otf@end{%
+ \otf@hy@utf@error
+}
+
+\def\otf@hy@utf@sw#1{%
+ \otf@cond \ifnum"0#1>"10FFFF \fi{%
+ \otf@hy@utf@error
+ }{%
+ \otf@hy@utf@sw@a{#1}%
+ }%
+}
+\def\otf@hy@utf@sw@a#1{%
+ \otf@cond \ifnum"0#1>"FFFF \fi{%
+ \otf@hy@utf@big#1"000000\otf@end
+ }{%
+ \otf@hy@utf@small#1"0000\otf@end
+ }%
+}
+\def\otf@hy@utf@small#1#2#3#4#5#6\otf@end{%
+ \otf@hy@utf@small@a#1#2#3#4#5\otf@end
+}
+\def\otf@hy@utf@small@a#1"#2\otf@end{%
+ \otf@hy@utf@unit{#2#1}%
+}
+\def\otf@hy@utf@big#1#2#3#4#5#6#7#8\otf@end{%
+ \otf@hy@utf@big@a#1#2#3#4#5#6#7\otf@end
+}
+\def\otf@hy@utf@big@a#1"#2\otf@end{%
+ \otf@hy@utf@big@b#2#1\otf@end
+}
+\def\otf@hy@utf@big@b#1#2#3#4{%
+ \otf@triexpandafter\otf@hy@utf@big@c
+ \csname otf@lhq/#1#2\otf@triexpandafter\endcsname
+ \csname otf@hq/#3\otf@triexpandafter\endcsname
+ \csname otf@hq/#4\endcsname
+}
+\def\otf@hy@utf@big@c#1#2#3#4#5#6{%
+ \otf@triexpandafter\otf@hy@utf@big@d
+ \csname otf@qh/2#1\otf@triexpandafter\endcsname
+ \csname otf@qh/#2#3\otf@triexpandafter\endcsname
+ \csname otf@qh/#4#5\otf@triexpandafter\endcsname
+ \csname otf@qh/3#6\endcsname
+}
+\def\otf@hy@utf@big@d#1#2#3#4#5\otf@end{%
+ \otf@hy@utf@unit{D#1#2#3}%
+ \otf@hy@utf@unit{D#4#5}%
+}
+\def\otf@hy@utf@error{%
+ \otf@hy@utf@unit{FFFD}%
+}
+\def\otf@hy@utf@unit#1{%
+ \0x#1%
+}
+\AtBeginDocument{\Redefine@UTF}
+%internal macros
+%macros by iNOUE Koich!
+\newcommand\set@character{\afterassignment\put@character\@tempcnta}
+\newcommand\put@character{%
+ \@tempcntb=\@tempcnta
+ \divide\@tempcntb by "1000
+ \kanjishape{\ifcase\@tempcntb0\or1\or2\or3\or4\or5\or6\or7\or8\or9\or a\or b\or c\or d\or e\or f\or
+ \or \or \or \or \or \or \or \or \or \or \or g\or \or h\or i\or j\or
+ k\or l\or m\or n\or o\or p\or q\or r\or s\or t\or u\or v\or w\or x\or y\or z\fi}%
+ \selectfont%
+ \multiply\@tempcntb by "1000
+ \advance\@tempcnta by -\@tempcntb
+ \@tempcntb=\@tempcnta
+ \divide\@tempcntb by "40
+ \multiply\@tempcntb by "C0
+ \advance\@tempcnta by \@tempcntb
+ \if@otf@uplatex
+ \advance\@tempcnta by "113030
+ \char\@tempcnta%
+ \else
+ \advance\@tempcnta by "3030
+ \char\jis\@tempcnta%
+ \fi
+}
+\catcode`\"=\count@
+%end of changing catcode of \"
+\def\Declare@FontShape#1#2#3#4{%
+ \Declare@FontShapeEnc{\otf@JYn}{#1}{#2}{#4}{h}#3\@nil
+ \Declare@FontShapeEnc{\otf@JTn}{#1}{#2}{#4}{v}#3\@nil}
+\def\Declare@FontShapeEnc#1#2#3#4#5#6{\ifx\@nil#6\else
+ \DeclareFontShape{#1}{#2}{#3}{#6}{<->s*[\utf@sc@le]#4#6-#5}{}%
+ \Declare@FontShape@Enc{#1}{#2}{#3}{#4}{#5}\fi}
+\def\Declare@FontShape@Enc#1\fi{\fi\Declare@FontShapeEnc#1}
+\if@otf@scale
+ \relax
+\else
+ \@ifundefined{Cjascale}{%
+ %for jsclasses
+ \@ifclassloaded{jsreport}{\@jsclassestrue}{}
+ \@ifclassloaded{jsarticle}{\@jsclassestrue}{}
+ \@ifclassloaded{jsbook}{\@jsclassestrue}{}
+ \if@jsclasses\def\utf@sc@le{0.92469}\else\def\utf@sc@le{0.962216}\fi
+ }{\edef\utf@sc@le{\Cjascale}}
+\fi
+%definitions of alt-normal font family
+\@ifundefined{if@enablejfam}{%
+ \let\if@jfam@used\iffalse
+}{%
+ \let\if@jfam@used\if@enablejfam
+}
+\if@replace
+ \DeclareErrorKanjiFont{\otf@JYn}{hmc}{m}{n}{10}
+ \DeclareKanjiSubstitution{\otf@JYn}{hmc}{m}{n}
+ \DeclareKanjiSubstitution{\otf@JTn}{hmc}{m}{n}
+ \DeclareKanjiFamily{\otf@JYn}{hmc}{}
+ \DeclareKanjiFamily{\otf@JTn}{hmc}{}
+ \DeclareKanjiFamily{\otf@JYn}{hgt}{}
+ \DeclareKanjiFamily{\otf@JTn}{hgt}{}
+ \DeclareRelationFont{\otf@JYn}{hmc}{m}{}{\otf@OTorT1}{cmr}{m}{}
+ \DeclareRelationFont{\otf@JTn}{hmc}{m}{}{\otf@OTorT1}{cmr}{m}{}
+ \DeclareRelationFont{\otf@JYn}{hmc}{bx}{}{\otf@OTorT1}{cmr}{bx}{}
+ \DeclareRelationFont{\otf@JTn}{hmc}{bx}{}{\otf@OTorT1}{cmr}{bx}{}
+ \if@deluxe
+ \DeclareRelationFont{\otf@JYn}{hgt}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRelationFont{\otf@JTn}{hgt}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRelationFont{\otf@JYn}{hgt}{bx}{}{\otf@OTorT1}{cmss}{bx}{}
+ \DeclareRelationFont{\otf@JTn}{hgt}{bx}{}{\otf@OTorT1}{cmss}{bx}{}
+ \else
+ \DeclareRelationFont{\otf@JYn}{hgt}{m}{}{\otf@OTorT1}{cmr}{bx}{}
+ \DeclareRelationFont{\otf@JTn}{hgt}{m}{}{\otf@OTorT1}{cmr}{bx}{}
+ \DeclareRelationFont{\otf@JYn}{hgt}{bx}{}{\otf@OTorT1}{cmr}{bx}{}
+ \DeclareRelationFont{\otf@JTn}{hgt}{bx}{}{\otf@OTorT1}{cmr}{bx}{}
+ \fi
+ \@ifpackageloaded{jisx0213}{\relax}{\def\mcdefault{hmc}\def\gtdefault{hgt}}
+ \if@jfam@used
+ \if@compatibility\else
+ \DeclareSymbolFont{mincho}{\otf@JYn}{hmc}{m}{n}
+ \DeclareSymbolFontAlphabet{\mathmc}{mincho}
+ \SetSymbolFont{mincho}{bold}{\otf@JYn}{hmc}{bx}{n}
+ \DeclareMathAlphabet{\mathgt}{\otf@JYn}{hgt}{m}{n}
+ \SetMathAlphabet{\mathgt}{bold}{\otf@JYn}{hgt}{bx}{n}
+ \jfam\symmincho
+ \fi
+ \fi
+\fi
+\if@kana
+ \DeclareKanjiFamily{\otf@JYn}{ruby}{}
+ \DeclareKanjiFamily{\otf@JTn}{ruby}{}
+ \newcommand{\rubydefault}{ruby}
+ \if@deluxe
+ \DeclareKanjiFamily{\otf@JYn}{rubyg}{}
+ \DeclareKanjiFamily{\otf@JTn}{rubyg}{}
+ \DeclareRelationFont{\otf@JYn}{rubyg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRelationFont{\otf@JTn}{rubyg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRobustCommand\rubyfamily{\edef\reserved@a{\gtdefault}%
+ \edef\reserved@b{\mgdefault}%
+ \ifx\k@family\reserved@a \kanjifamily{rubyg}\else\ifx\k@family\reserved@b
+ \kanjifamily{rubymg}\else \kanjifamily{ruby}\fi\fi%
+ \selectfont}
+ \else
+ \DeclareRobustCommand\rubyfamily{\edef\reserved@a{\gtdefault}%
+ \ifx\k@family\reserved@a \kanjiseries{bx}\fi%
+ \kanjifamily\rubydefault\selectfont}
+ \fi
+ \AtBeginDocument{\ifx\rubykatuji\@undefined\else\def\rubykatuji{\rubyfamily\tiny}\fi}
+\fi
+%definition of normal font shape
+\if@kana
+ \DeclareFontShape{\otf@JYn}{hmc}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{ruby}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminr-h}{}
+ \DeclareFontShape{\otf@JTn}{ruby}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminr-v}{}
+\else
+ \if@replace
+ \DeclareFontShape{\otf@JYn}{hmc}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlminr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlminr\nlck@sfx@-v}{}
+ \fi
+\fi
+\if@replace\if@deluxe
+ \if@kana
+ \DeclareFontShape{\otf@JYn}{hmc}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminb-h}{}
+ \DeclareFontShape{\otf@JTn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminb-v}{}
+ \DeclareFontShape{\otf@JYn}{rubyg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothr-h}{}
+ \DeclareFontShape{\otf@JTn}{rubyg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothr-v}{}
+ \DeclareFontShape{\otf@JYn}{rubyg}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothb-h}{}
+ \DeclareFontShape{\otf@JTn}{rubyg}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothb-v}{}
+ \else
+ \DeclareFontShape{\otf@JYn}{hmc}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlminb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlminb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothb\nlck@sfx@-v}{}
+ \fi
+\else
+ \if@kana
+ \if@bold
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothb-h}{}
+ \DeclareFontShape{\otf@JTn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothb-v}{}
+ \else
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgothr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothr-h}{}
+ \DeclareFontShape{\otf@JTn}{ruby}{bx}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubygothr-v}{}
+ \fi
+ \else
+ \if@bold
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothb\nlck@sfx@-v}{}
+ \else
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgothr\nlck@sfx@-v}{}
+ \fi
+ \fi
+ \DeclareFontShape{\otf@JYn}{hmc}{bx}{n}{<->ssub*hgt/m/n}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{bx}{n}{<->ssub*hgt/m/n}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{bx}{n}{<->ssub*hgt/m/n}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{bx}{n}{<->ssub*hgt/m/n}{}
+\fi\fi
+%definition of extra fonts: maru gothic family, light series, eb series, prop. shape
+\if@deluxe
+ \def\mgdefault{mg}
+ \def\propdefault{prp}
+ \def\ebdefault{eb}
+ \def\ltdefault{l}
+ \DeclareKanjiFamily{\otf@JYn}{mg}{}
+ \DeclareKanjiFamily{\otf@JTn}{mg}{}
+ \DeclareRelationFont{\otf@JYn}{mg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRelationFont{\otf@JTn}{mg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareMathAlphabet{\mathmg}{\otf@JYn}{mg}{m}{n}
+ \DeclareRobustCommand\mgfamily{\not@math@alphabet\mgfamily\mathmg%
+ \kanjifamily\mgdefault\selectfont}
+ \DeclareTextFontCommand{\textmg}{\mgfamily}
+ \DeclareKanjiFamily{\otf@JYn}{rubymg}{}
+ \DeclareKanjiFamily{\otf@JTn}{rubymg}{}
+ \DeclareRelationFont{\otf@JYn}{rubymg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRelationFont{\otf@JTn}{rubymg}{m}{}{\otf@OTorT1}{cmss}{m}{}
+ \DeclareRobustCommand\propshape
+ {\not@math@alphabet\propshape\relax
+ \kanjishape\propdefault\selectfont}
+ \DeclareRobustCommand\ebseries
+ {\not@math@alphabet\ebseries\relax
+ \kanjiseries\ebdefault\selectfont}
+ \DeclareRobustCommand\ltseries
+ {\not@math@alphabet\ltseries\relax
+ \kanjiseries\ltdefault\selectfont}
+ \if@kana
+ \DeclareFontShape{\otf@JYn}{mg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expmgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{mg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expmgothr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{rubymg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubymgothr-h}{}
+ \DeclareFontShape{\otf@JTn}{rubymg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubymgothr-v}{}
+ \DeclareFontShape{\otf@JYn}{hmc}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminl\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expminl\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{eb}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgotheb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{eb}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ expgotheb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{ruby}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminl-h}{}
+ \DeclareFontShape{\otf@JTn}{ruby}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ rubyminl-v}{}
+ \else
+ \DeclareFontShape{\otf@JYn}{mg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlmgothr\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{mg}{m}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlmgothr\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hmc}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ nmlminl\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{l}{n}{<-> s * [\utf@sc@le] \otf@pfx@ nmlminl\nlck@sfx@-v}{}
+ \fi
+ \DeclareFontShape{\otf@JYn}{hgt}{eb}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgotheb\nlck@sfx@-h}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{eb}{n}{<-> s * [\utf@sc@le] \otf@pfx@ \brsg@pfx@ nmlgotheb\nlck@sfx@-v}{}
+ \DeclareFontShape{\otf@JYn}{hmc}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiraminw3-h}{}
+ \DeclareFontShape{\otf@JYn}{hmc}{bx}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiraminw6-h}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phirakakuw3-h}{}
+ \DeclareFontShape{\otf@JYn}{hgt}{bx}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phirakakuw6-h}{}
+ \DeclareFontShape{\otf@JYn}{mg}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiramaruw4-h}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiraminw3-v}{}
+ \DeclareFontShape{\otf@JTn}{hmc}{bx}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiraminw6-v}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phirakakuw3-v}{}
+ \DeclareFontShape{\otf@JTn}{hgt}{bx}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phirakakuw6-v}{}
+ \DeclareFontShape{\otf@JTn}{mg}{m}{prp}{<-> s * [\utf@sc@le] \otf@pfx@ phiramaruw4-v}{}
+\fi
+%definition of normal utf/cid fonts
+\DeclareKanjiFamily{\otf@JYn}{utfj}{}
+\DeclareKanjiFamily{\otf@JTn}{utfj}{}
+\DeclareKanjiFamily{\otf@JYn}{cidj}{}
+\DeclareKanjiFamily{\otf@JTn}{cidj}{}
+\Declare@FontShape{utfj}{m}{0123456789abcdefjklmnopqrstuvxyz}{utfjmr\nlck@sfx@}
+\Declare@FontShape{cidj}{m}{012345}{cidjmr}
+%definition of other utf/cid fonts
+\if@deluxe
+ \Declare@FontShape{utfj}{bx}{0123456789abcdefjklmnopqrstuvxyz}{utfjmb\nlck@sfx@}
+ \Declare@FontShape{cidj}{bx}{012345}{cidjmb}
+ \DeclareKanjiFamily{\otf@JYn}{utfjg}{}
+ \DeclareKanjiFamily{\otf@JTn}{utfjg}{}
+ \DeclareKanjiFamily{\otf@JYn}{cidjg}{}
+ \DeclareKanjiFamily{\otf@JTn}{cidjg}{}
+ \Declare@FontShape{utfjg}{m}{0123456789abcdefjklmnopqrstuvxyz}{utfjgr\nlck@sfx@}
+ \Declare@FontShape{cidjg}{m}{012345}{cidjgr}
+ \Declare@FontShape{utfjg}{bx}{0123456789abcdefjklmnopqrstuvxyz}{utfjgb\nlck@sfx@}
+ \Declare@FontShape{cidjg}{bx}{012345}{cidjgb}
+ \Declare@FontShape{utfjg}{eb}{0123456789abcdefjklmnopqrstuvxyz}{utfjge\nlck@sfx@}
+ \Declare@FontShape{cidjg}{eb}{012345}{cidjge}
+ \DeclareKanjiFamily{\otf@JYn}{utfjmg}{}
+ \DeclareKanjiFamily{\otf@JTn}{utfjmg}{}
+ \DeclareKanjiFamily{\otf@JYn}{cidjmg}{}
+ \DeclareKanjiFamily{\otf@JTn}{cidjmg}{}
+ \Declare@FontShape{utfjmg}{m}{0123456789abcdefjklmnopqrstuvxyz}{utfjmgr\nlck@sfx@}
+ \Declare@FontShape{cidjmg}{m}{012345}{cidjmgr}
+ \Declare@FontShape{utfj}{l}{0123456789abcdefjklmnopqrstuvxyz}{utfjml\nlck@sfx@}
+ \Declare@FontShape{cidj}{l}{012345}{cidjml}
+\else
+ \if@bold
+ \Declare@FontShape{utfj}{bx}{0123456789abcdefjklmnopqrstuvxyz}{utfjgb\nlck@sfx@}
+ \Declare@FontShape{cidj}{bx}{012345}{cidjgb}
+ \else
+ \Declare@FontShape{utfj}{bx}{0123456789abcdefjklmnopqrstuvxyz}{utfjgr\nlck@sfx@}
+ \Declare@FontShape{cidj}{bx}{012345}{cidjgr}
+ \fi
+\fi
+\if@macro
+ %input ajmacros.sty
+ \IfFileExists{ajmacros.sty}{\RequirePackage{ajmacros}}{\PackageError{otf}{No File ajmacros.sty!}{}}%2003/03/12
+ %for literature
+ \DeclareRobustCommand\ajKunoji{\iftdir\mbox{\UTF{3033}\UTF{3035}}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \DeclareRobustCommand\ajKunojiwithBou{\iftdir\mbox{\bou{\mbox{\UTF{3033}}}\bou{\mbox{\UTF{3035}}}}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \DeclareRobustCommand\ajDKunoji{\iftdir\mbox{\UTF{3034}\UTF{3035}}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \DeclareRobustCommand\ajDKunojiwithBou{\iftdir\mbox{\bou{\mbox{\UTF{3034}}}\bou{\mbox{\UTF{3035}}}}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \newcommand\ajNinoji{\CID{12106}}
+ \newcommand\ajvarNinoji{\iftdir\CID{12107}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \newcommand\ajYusuriten{\iftdir\CID{16193}\else
+ \PackageError{otf}{A TATE character in YOKO mode!}{Change a direction to TATE.}%2003/03/12
+ \fi}
+ \newcommand\ajMasu{\UTF{303c}}
+ \newcommand\ajYori{\UTF{309f}}
+ \newcommand\ajKoto{\UTF{30ff}}
+ \newcommand\ajUta{\UTF{303d}}
+ %dingbats
+ \newcommand\ajCommandKey{\UTF{2318}}
+ \newcommand\ajReturnKey{\UTF{23ce}}
+ \newcommand\ajCheckmark{\UTF{2713}}
+ \newcommand\ajVisibleSpace{\UTF{2423}}
+ \newcommand\ajSenteMark{\UTF{2617}}
+ \newcommand\ajGoteMark{\UTF{2616}}
+ \newcommand\ajClub{\UTF{2663}}
+ \newcommand\ajHeart{\UTF{2661}}
+ \newcommand\ajSpade{\UTF{2660}}
+ \newcommand\ajDiamond{\UTF{2662}}
+ \newcommand\ajvarClub{\UTF{2667}}
+ \newcommand\ajvarHeart{\UTF{2665}}
+ \newcommand\ajvarSpade{\UTF{2664}}
+ \newcommand\ajvarDiamond{\UTF{2666}}
+ \newcommand\ajPhone{\UTF{260e}}
+ \newcommand\ajPostal{\UTF{3020}}
+ \newcommand\ajvarPostal{\UTF{3036}}
+ \newcommand\ajSun{\UTF{2600}}
+ \newcommand\ajCloud{\UTF{2601}}
+ \newcommand\ajUmbrella{\UTF{2602}}
+ \newcommand\ajSnowman{\UTF{2603}}
+ \newcommand\ajJIS{\UTF{3004}}
+ \newcommand\ajJAS{\CID{12088}}
+ \newcommand\ajBall{\CID{12097}}
+ \newcommand\ajHotSpring{\UTF{2668}}
+ \newcommand\ajWhiteSesame{\UTF{fe46}}
+ \newcommand\ajBlackSesame{\UTF{fe45}}
+ \newcommand\ajWhiteFlorette{\UTF{2740}}
+ \newcommand\ajBlackFlorette{\UTF{273f}}
+ \newcommand\ajRightBArrow{\CID{8206}}
+ \newcommand\ajLeftBArrow{\CID{8207}}
+ \newcommand\ajUpBArrow{\CID{8208}}
+ \newcommand\ajDownBArrow{\CID{8209}}
+ \newcommand\ajRightHand{\CID{8219}}
+ \newcommand\ajLeftHand{\CID{8220}}
+ \newcommand\ajUpHand{\CID{8221}}
+ \newcommand\ajDownHand{\CID{8222}}
+ \newcommand\ajRightScissors{\CID{12176}}
+ \newcommand\ajLeftScissors{\CID{12175}}
+ \newcommand\ajUpScissors{\CID{12177}}
+ \newcommand\ajDownScissors{\CID{12178}}
+ \newcommand\ajRightWArrow{\CID{12197}}
+ \newcommand\ajLeftWArrow{\CID{12196}}
+ \newcommand\ajUpWArrow{\CID{12198}}
+ \newcommand\ajDownWArrow{\CID{12199}}
+ \newcommand\ajRightDownArrow{\CID{12202}}
+ \newcommand\ajLeftDownArrow{\CID{12203}}
+ \newcommand\ajLeftUpArrow{\CID{12204}}
+ \newcommand\ajRightUpArrow{\CID{12205}}
+\fi
+\endinput
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/Makefile b/language/japanese/japanese-otf-uptex/test/uplatex/Makefile
new file mode 100644
index 0000000000..78974e127f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/Makefile
@@ -0,0 +1,192 @@
+UPTEX = uptex
+PTEX = ptex
+UPLATEX = uplatex
+PLATEX = platex -kanji=utf8
+DVIPS = dvips
+DVIPDFMX = dvipdfmx
+PDVITYPE = pdvitype
+
+all: otf sp art bsrg jis04 scale prop punct exclam
+
+otf: uplatex-otf platex-otf
+sp: uplatex-sp platex-sp
+art: uplatex-article platex-article
+brsg: uplatex-brsg platex-brsg
+jis04: uplatex-jis04 platex-jis04
+scale: uplatex-scale platex-scale
+prop: uplatex-prop platex-prop
+exclam: uplatex-exclam platex-exclam
+
+uplatex-otf:
+ for opt in default deluxe expert bold noreplace; do \
+ $(UPLATEX) "\def\option{$$opt}\def\class{ujarticle}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-h-uplatex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\option{$$opt}\def\class{utarticle}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-v-uplatex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-v-uplatex.dvi ; \
+ done
+
+platex-otf:
+ for opt in default deluxe expert bold noreplace; do \
+ $(PLATEX) "\def\option{$$opt}\def\class{jarticle}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-h-platex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-h-platex.dvi ; \
+ $(PLATEX) "\def\option{$$opt}\def\class{tarticle}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-v-platex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-v-platex.dvi ; \
+ done
+
+uplatex-sp:
+ for opt in default deluxe expert bold noreplace; do \
+ $(UPLATEX) "\def\option{$$opt}\def\class{ujarticle}\input" uotf-sp-utf8.tex ; \
+ mv uotf-sp-utf8.dvi uotf-sp-$$opt-h-uplatex.dvi ; \
+ $(DVIPDFMX) uotf-sp-$$opt-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\option{$$opt}\def\class{utarticle}\input" uotf-sp-utf8.tex ; \
+ mv uotf-sp-utf8.dvi uotf-sp-$$opt-v-uplatex.dvi ; \
+ $(DVIPDFMX) uotf-sp-$$opt-v-uplatex.dvi ; \
+ done
+
+platex-sp:
+ for opt in default deluxe expert bold noreplace; do \
+ $(PLATEX) "\def\option{$$opt}\def\class{jarticle}\input" uotf-sp-utf8.tex ; \
+ mv uotf-sp-utf8.dvi uotf-sp-$$opt-h-platex.dvi ; \
+ $(DVIPDFMX) uotf-sp-$$opt-h-platex.dvi ; \
+ $(PLATEX) "\def\option{$$opt}\def\class{tarticle}\input" uotf-sp-utf8.tex ; \
+ mv uotf-sp-utf8.dvi uotf-sp-$$opt-v-platex.dvi ; \
+ $(DVIPDFMX) uotf-sp-$$opt-v-platex.dvi ; \
+ done
+
+uplatex-article:
+ for opt in noreplace; do \
+ $(UPLATEX) "\def\option{$$opt}\def\class{article}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-a-uplatex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-a-uplatex.dvi ; \
+ done
+
+platex-article:
+ for opt in noreplace; do \
+ $(PLATEX) "\def\option{$$opt}\def\class{article}\input" uotftest-utf8.tex ; \
+ mv uotftest-utf8.dvi uotftest-$$opt-a-platex.dvi ; \
+ $(DVIPDFMX) uotftest-$$opt-a-platex.dvi ; \
+ done
+
+uplatex-brsg:
+ for opt in default expert; do \
+ for burasage in br oi; do \
+ $(UPLATEX) "\def\option{$$opt}\def\burasage{$$burasage}\def\class{ujbook}\input" upbrsgtest.tex ; \
+ mv upbrsgtest.dvi upbrsgtest-$$opt-$$burasage-h-uplatex.dvi ; \
+ $(DVIPDFMX) upbrsgtest-$$opt-$$burasage-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\option{$$opt}\def\burasage{$$burasage}\def\class{utbook}\input" upbrsgtest.tex ; \
+ mv upbrsgtest.dvi upbrsgtest-$$opt-$$burasage-v-uplatex.dvi ; \
+ $(DVIPDFMX) upbrsgtest-$$opt-$$burasage-v-uplatex.dvi ; \
+ done \
+ done
+
+platex-brsg:
+ for opt in default expert; do \
+ for burasage in br oi; do \
+ $(PLATEX) "\def\option{$$opt}\def\burasage{$$burasage}\def\class{jbook}\input" upbrsgtest.tex ; \
+ mv upbrsgtest.dvi upbrsgtest-$$opt-$$burasage-h-platex.dvi ; \
+ $(DVIPDFMX) upbrsgtest-$$opt-$$burasage-h-platex.dvi ; \
+ $(PLATEX) "\def\option{$$opt}\def\burasage{$$burasage}\def\class{tbook}\input" upbrsgtest.tex ; \
+ mv upbrsgtest.dvi upbrsgtest-$$opt-$$burasage-v-platex.dvi ; \
+ $(DVIPDFMX) upbrsgtest-$$opt-$$burasage-v-platex.dvi ; \
+ done \
+ done
+
+uplatex-jis04:
+ for opt in default expert; do \
+ for brsg in br oi; do \
+ for jis in 00 04; do \
+ $(UPLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{ujarticle}\input" upjis2004.tex ; \
+ mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-h-uplatex.dvi ; \
+ $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{utarticle}\input" upjis2004.tex ; \
+ mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-v-uplatex.dvi ; \
+ $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-v-uplatex.dvi ; \
+ done \
+ done \
+ done
+
+platex-jis04:
+ for opt in default expert; do \
+ for brsg in br oi; do \
+ for jis in 00 04; do \
+ $(PLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{jarticle}\input" upjis2004.tex ; \
+ mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-h-platex.dvi ; \
+ $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-h-platex.dvi ; \
+ $(PLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{tarticle}\input" upjis2004.tex ; \
+ mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-v-platex.dvi ; \
+ $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-v-platex.dvi ; \
+ done \
+ done \
+ done
+
+uplatex-scale:
+ for scl in default 0.5 1.0 1.5 2.0; do \
+ $(UPLATEX) "\def\scale{$$scl}\def\class{ujarticle}\input" otfscale.tex ; \
+ mv otfscale.dvi otfscale-$$scl-uplatex.dvi ; \
+ $(DVIPDFMX) otfscale-$$scl-uplatex.dvi ; \
+ done
+ for scl in default 1.0; do \
+ $(UPLATEX) "\def\scale{$$scl}\def\class{jsarticle}\input" otfscale.tex ; \
+ mv otfscale.dvi otfscale-$$scl-js-uplatex.dvi ; \
+ $(DVIPDFMX) otfscale-$$scl-js-uplatex.dvi ; \
+ done
+
+platex-scale:
+ for scl in default 0.5 1.0 1.5 2.0; do \
+ $(PLATEX) "\def\scale{$$scl}\def\class{jarticle}\input" otfscale.tex ; \
+ mv otfscale.dvi otfscale-$$scl-platex.dvi ; \
+ $(DVIPDFMX) otfscale-$$scl-platex.dvi ; \
+ done
+ for scl in default 1.0; do \
+ $(PLATEX) "\def\scale{$$scl}\def\class{jsarticle}\input" otfscale.tex ; \
+ mv otfscale.dvi otfscale-$$scl-js-platex.dvi ; \
+ $(DVIPDFMX) otfscale-$$scl-js-platex.dvi ; \
+ done
+
+uplatex-prop:
+ for test in 1 2; do \
+ $(UPLATEX) "\def\class{ujarticle}\input" upkanatest$$test.tex ; \
+ mv upkanatest$$test.dvi upkanatest$$test-h-uplatex.dvi ; \
+ $(DVIPDFMX) upkanatest$$test-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\class{utarticle}\input" upkanatest$$test.tex ; \
+ mv upkanatest$$test.dvi upkanatest$$test-v-uplatex.dvi ; \
+ $(DVIPDFMX) -l upkanatest$$test-v-uplatex.dvi ; \
+ done
+
+platex-prop:
+ for test in 1 2; do \
+ $(PLATEX) "\def\class{jarticle}\input" upkanatest$$test.tex ; \
+ mv upkanatest$$test.dvi upkanatest$$test-h-platex.dvi ; \
+ $(DVIPDFMX) upkanatest$$test-h-platex.dvi ; \
+ $(PLATEX) "\def\class{tarticle}\input" upkanatest$$test.tex ; \
+ mv upkanatest$$test.dvi upkanatest$$test-v-platex.dvi ; \
+ $(DVIPDFMX) -l upkanatest$$test-v-platex.dvi ; \
+ done
+
+punct:
+ for opt in default deluxe expert bold noreplace; do \
+ $(UPLATEX) "\def\option{$$opt}\input" punctuation.tex ; \
+ mv punctuation.dvi punctuation-$$opt.dvi ; \
+ $(DVIPDFMX) punctuation-$$opt.dvi ; \
+ done
+
+uplatex-exclam:
+ for opt in default deluxe noreplace; do \
+ $(UPLATEX) "\def\option{$$opt}\input" exclam.tex ; \
+ mv exclam.dvi exclam-$$opt-uplatex.dvi ; \
+ $(DVIPDFMX) exclam-$$opt-uplatex.dvi ; \
+ done
+
+platex-exclam:
+ for opt in default deluxe noreplace; do \
+ $(PLATEX) "\def\option{$$opt}\input" exclam.tex ; \
+ mv exclam.dvi exclam-$$opt-platex.dvi ; \
+ $(DVIPDFMX) exclam-$$opt-platex.dvi ; \
+ done
+
+clean:
+ rm -f *.aux *.log *.dvi *.pdf
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/era.tex b/language/japanese/japanese-otf-uptex/test/uplatex/era.tex
new file mode 100644
index 0000000000..65be6c5245
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/era.tex
@@ -0,0 +1,111 @@
+% -*- coding: utf-8 -*-
+
+%%%%%%%%
+% ①,②,③,④,⑤,⑥ のどれかを実行すればよい。
+% ① platex, 新元号なし
+% $ platex era.tex
+% ② uplatex, 新元号なし
+% $ uplatex era.tex
+% ③ platex, 新元号あり
+% $ platex "\def\era{true}\input" era.tex
+% ④ uplatex, 新元号あり
+% $ uplatex "\def\era{true}\input" era.tex
+% ⑤ platex, 新元号あり、\ajLig{令和}も含む
+% $ platex "\def\era{full}\input" era.tex
+% ⑥ uplatex, 新元号あり、\ajLig{令和}も含む
+% $ uplatex "\def\era{full}\input" era.tex
+%%%%%%
+
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@full{full}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\engine{upLaTeX}
+ \else
+ \def\engine{pLaTeX}
+ \fi
+\fi
+
+\newif\ifnewera\newerafalse
+\ifx\era\@undefined
+ \edef\era{なし}
+\else
+ \neweratrue
+ \ifx\era\@full
+ \def\ligNewEra{\ajLig{令和}}
+ \edef\era{あり (ajLigも含む)}
+ \else
+ \def\ligNewEra{\relax}
+ \edef\era{あり}
+ \fi
+\fi
+\typeout{## 新元号:\era ##}
+
+\documentclass[a4paper,draft,autodetect-engine]{jsarticle}
+
+\usepackage{plext}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+\edef\bs{$\backslash$\kern0em}
+
+\begin{document}
+\parindent0pt
+
+エンジン:\texttt{\engine}\\
+オプション:\texttt{\option}\\
+新元号:\era
+
+\vskip1zh
+
+\bs{}ajLig: \ajLig{明治}\ajLig{大正}\ajLig{昭和}\ajLig{平成}\ifnewera\ligNewEra\fi
+
+\bs{}UTF: \UTF{337E}\UTF{337D}\UTF{337C}\UTF{337B}\ifnewera\UTF{32FF}\fi
+
+\bs{}CID: \CID{7621}\CID{7622}\CID{7623}\CID{8323}\ifnewera\CID{23058}\fi
+
+\ifuptexmode
+
+UTF-8: ㍾㍽㍼㍻\ifnewera ㋿\fi
+
+\bs{}kchar: \kchar"337E\kchar"337D\kchar"337C\kchar"337B\ifnewera\kchar"32FF\fi
+
+\fi
+
+\vskip1zh
+
+\parbox<t>{25.0zw}{
+
+\bs{}ajLig: \ajLig{明治}\ajLig{大正}\ajLig{昭和}\ajLig{平成}\ifnewera\ligNewEra\fi
+
+\bs{}UTF: \UTF{337E}\UTF{337D}\UTF{337C}\UTF{337B}\ifnewera\UTF{32FF}\fi
+
+\bs{}CID: \CID{12041}\CID{12042}\CID{12043}\CID{12044}\ifnewera\CID{23059}\fi
+
+\ifuptexmode
+
+UTF-8: ㍾㍽㍼㍻\ifnewera ㋿\fi
+
+\bs{}kchar: \kchar"337E\kchar"337D\kchar"337C\kchar"337B\ifnewera\kchar"32FF\fi
+
+\fi
+
+}
+
+\end{document}
+
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/exclam.tex b/language/japanese/japanese-otf-uptex/test/uplatex/exclam.tex
new file mode 100644
index 0000000000..2f8f1c3818
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/exclam.tex
@@ -0,0 +1,133 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+
+\documentclass[a4paper,draft]{\class}
+
+\usepackage{plext}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+
+\begin{document}
+\parindent0pt
+
+クラス:\texttt{\class}\\
+オプション:\texttt{\option}
+
+\vskip1zh
+
+あっ!あっ?ああ!ああ?驚いた。\\
+あっ! あっ? ああ! ああ? 驚いた。\\
+あっ!あっ?と驚き、ああ!ああ?と嘆く。\\
+あっ!\inhibitglue あっ?\inhibitglue と驚き、
+ああ!\inhibitglue ああ?\inhibitglue と嘆く。\\
+あっ\,!\inhibitglue\,あっ\,?\inhibitglue\,と驚き、
+ああ\,!\inhibitglue\,ああ\,?\inhibitglue\,と嘆く。\\
+あっ!\<あっ?\<と驚き、
+ああ!\<ああ?\<と嘆く。\\
+あっ\,!\<\,あっ\,?\<\,と驚き、
+ああ\,!\<\,ああ\,?\<\,と嘆く。
+
+\ifuptexmode
+
+あっ‼あっ⁇ああ‼ああ⁇驚いた。\\
+あっ‼ あっ⁇ ああ‼ ああ⁇ 驚いた。\\
+あっ‼あっ⁇と驚き、ああ‼ああ⁇と嘆く。\\
+あっ‼\inhibitglue あっ⁇\inhibitglue と驚き、
+ああ‼\inhibitglue ああ⁇\inhibitglue と嘆く。\\
+あっ\,‼\inhibitglue\,あっ\,⁇\inhibitglue\,と驚き、
+ああ\,‼\inhibitglue\,ああ\,⁇\inhibitglue\,と嘆く。\\
+あっ‼\<あっ⁇\<と驚き、
+ああ‼\<ああ⁇\<と嘆く。\\
+あっ\,‼\<\,あっ\,⁇\<\,と驚き、
+ああ\,‼\<\,ああ\,⁇\<\,と嘆く。
+
+あっ⁈あっ⁉ああ⁈ああ⁉驚いた。\\
+あっ⁈ あっ⁉ ああ⁈ ああ⁉ 驚いた。\\
+あっ⁈あっ⁉と驚き、ああ⁈ああ⁉と嘆く。\\
+あっ⁈\inhibitglue あっ⁉\inhibitglue と驚き、
+ああ⁈\inhibitglue ああ⁉\inhibitglue と嘆く。\\
+あっ\,⁈\inhibitglue\,あっ\,⁉\inhibitglue\,と驚き、
+ああ\,⁈\inhibitglue\,ああ\,⁉\inhibitglue\,と嘆く。\\
+あっ⁈\<あっ⁉\<と驚き、
+ああ⁈\<ああ⁉\<と嘆く。\\
+あっ\,⁈\<\,あっ\,⁉\<\,と驚き、
+ああ\,⁈\<\,ああ\,⁉\<\,と嘆く。
+
+\fi
+
+\vskip1zh
+
+\parbox<t>{25.0zw}{
+
+あっ!あっ?ああ!ああ?驚いた。\\
+あっ! あっ? ああ! ああ? 驚いた。\\
+あっ!あっ?と驚き、ああ!ああ?と嘆く。\\
+あっ!\inhibitglue あっ?\inhibitglue と驚き、
+ああ!\inhibitglue ああ?\inhibitglue と嘆く。\\
+あっ\,!\inhibitglue\,あっ\,?\inhibitglue\,と驚き、
+ああ\,!\inhibitglue\,ああ\,?\inhibitglue\,と嘆く。\\
+あっ!\<あっ?\<と驚き、
+ああ!\<ああ?\<と嘆く。\\
+あっ\,!\<\,あっ\,?\<\,と驚き、
+ああ\,!\<\,ああ\,?\<\,と嘆く。
+
+\ifuptexmode
+
+あっ‼あっ⁇ああ‼ああ⁇驚いた。\\
+あっ‼ あっ⁇ ああ‼ ああ⁇ 驚いた。\\
+あっ‼あっ⁇と驚き、ああ‼ああ⁇と嘆く。\\
+あっ‼\inhibitglue あっ⁇\inhibitglue と驚き、
+ああ‼\inhibitglue ああ⁇\inhibitglue と嘆く。\\
+あっ\,‼\inhibitglue\,あっ\,⁇\inhibitglue\,と驚き、
+ああ\,‼\inhibitglue\,ああ\,⁇\inhibitglue\,と嘆く。\\
+あっ‼\<あっ⁇\<と驚き、
+ああ‼\<ああ⁇\<と嘆く。\\
+あっ\,‼\<\,あっ\,⁇\<\,と驚き、
+ああ\,‼\<\,ああ\,⁇\<\,と嘆く。
+
+あっ⁈あっ⁉ああ⁈ああ⁉驚いた。\\
+あっ⁈ あっ⁉ ああ⁈ ああ⁉ 驚いた。\\
+あっ⁈あっ⁉と驚き、ああ⁈ああ⁉と嘆く。\\
+あっ⁈\inhibitglue あっ⁉\inhibitglue と驚き、
+ああ⁈\inhibitglue ああ⁉\inhibitglue と嘆く。\\
+あっ\,⁈\inhibitglue\,あっ\,⁉\inhibitglue\,と驚き、
+ああ\,⁈\inhibitglue\,ああ\,⁉\inhibitglue\,と嘆く。\\
+あっ⁈\<あっ⁉\<と驚き、
+ああ⁈\<ああ⁉\<と嘆く。\\
+あっ\,⁈\<\,あっ\,⁉\<\,と驚き、
+ああ\,⁈\<\,ああ\,⁉\<\,と嘆く。
+
+\fi
+
+}
+
+\end{document}
+
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/otfscale.tex b/language/japanese/japanese-otf-uptex/test/uplatex/otfscale.tex
new file mode 100644
index 0000000000..49d42eb177
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/otfscale.tex
@@ -0,0 +1,69 @@
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+\def\@tarticle{tarticle}
+\def\@op@cls{}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\scale\@undefined
+ \edef\scale{default}
+\else
+ \ifx\scale\@default
+ \else
+ \edef\@opt@{scale=\scale,\@opt@}
+ \fi
+\fi
+\typeout{## scale: \scale ##}
+
+\ifx\class\@undefined
+ \def\class{jarticle}
+\fi
+\ifx\class\@jarticle
+\else
+ \ifx\class\@tarticle
+ \else
+ \ifnum\jis"2121="3000
+ \edef\@opt@{uplatex,\@opt@}
+ \def\@op@cls{,uplatex}
+ \else
+ \fi
+ \fi
+\fi
+
+\documentclass[a4paper,titlepage,draft\@op@cls]{\class}
+
+\usepackage[\@opt@]{otf}
+\usepackage{color}
+\newcommand{\redframe}[1]{%
+ \textcolor{red}{\frame{\textcolor{black}{#1}}}}
+
+\begin{document}
+\section{見出し}
+
+クラス:\texttt{\class}\\
+オプション:\texttt{\option}\\
+スケール:\texttt{\scale}
+
+\parindent0mm
+\xkanjiskip=0pt plus.1pt minus.1pt
+
+\vbox{\tate
+\hbox{\Large \redframe{HMH}\redframe{回□回}\redframe{HMH}\redframe{回□回}\redframe{HMH}}
+\hbox{\Large HMH回□回HMH回□回HMH}
+}
+
+\vbox{\yoko
+\hbox{\Large \redframe{HMH}\redframe{回□回}\redframe{HMH}\redframe{回□回}\redframe{HMH}}
+\hbox{\Large HMH回□回HMH回□回HMH}
+}
+
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/paren0.tex b/language/japanese/japanese-otf-uptex/test/uplatex/paren0.tex
new file mode 100644
index 0000000000..e12e947fc8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/paren0.tex
@@ -0,0 +1,45 @@
+% -*- coding: utf-8 -*-
+
+%\Bracket{«}{»} \BracketUCS{00AB}{00BB}\\% Adobe-Japan1-6には和文用グリフがない
+\Bracket{‘}{’} \BracketUCS{2018}{2019}\\
+\Bracket{“}{”} \BracketUCS{201C}{201D}\\
+\Bracket{〈}{〉} \BracketUCS{2329}{232A}\\
+\Bracket{〈}{〉} \BracketUCS{3008}{3009}\\
+\Bracket{《}{》} \BracketUCS{300A}{300B}\\
+\Bracket{「}{」} \BracketUCS{300C}{300D}\\
+\Bracket{『}{』} \BracketUCS{300E}{300F}\\
+\Bracket{【}{】} \BracketUCS{3010}{3011}\\
+\Bracket{〔}{〕} \BracketUCS{3014}{3015}\\
+\Bracket{〖}{〗} \BracketUCS{3016}{3017}\\
+\Bracket{〘}{〙} \BracketUCS{3018}{3019}\\
+%\Bracket{〚}{〛} \BracketUCS{301A}{301B}\\% Adobe-Japan1-6には無い
+\Bracket{〝}{〞} \BracketUCS{301D}{301E}\\% 日本では標準的ではない
+\Bracket{〝}{〟} \BracketUCS{301D}{301F}\\
+\Bracket{(}{)} \BracketUCS{FF08}{FF09}\\
+\Bracket{[}{]} \BracketUCS{FF3B}{FF3D}\\
+\Bracket{{}{}} \BracketUCS{FF5B}{FF5D}\\
+\Bracket{⦅}{⦆} \BracketUCS{FF5F}{FF60}\\
+
+\parbox<t>{21.0zw}{
+
+%\Bracket{«}{»} \BracketUCS{00AB}{00BB}\\% Adobe-Japan1-6には和文用グリフがない
+%\Bracket{‘}{’} \BracketUCS{2018}{2019}\\% 標準的ではない
+%\Bracket{“}{”} \BracketUCS{201C}{201D}\\% 標準的ではない
+%\Bracket{〈}{〉} \BracketUCS{2329}{232A}\\% 標準的ではない
+\Bracket{〈}{〉} \BracketUCS{3008}{3009}\\
+\Bracket{《}{》} \BracketUCS{300A}{300B}\\
+\Bracket{「}{」} \BracketUCS{300C}{300D}\\
+\Bracket{『}{』} \BracketUCS{300E}{300F}\\
+\Bracket{【}{】} \BracketUCS{3010}{3011}\\
+\Bracket{〔}{〕} \BracketUCS{3014}{3015}\\
+\Bracket{〖}{〗} \BracketUCS{3016}{3017}\\
+\Bracket{〘}{〙} \BracketUCS{3018}{3019}\\
+%\Bracket{〚}{〛} \BracketUCS{301A}{301B}\\% Adobe-Japan1-6には無い
+\Bracket{〝}{〞} \BracketUCS{301D}{301E}\\% 日本では標準的ではない。UniJISup-UTF16-Vでは割り当てた。
+\Bracket{〝}{〟} \BracketUCS{301D}{301F}\\
+\Bracket{(}{)} \BracketUCS{FF08}{FF09}\\
+\Bracket{[}{]} \BracketUCS{FF3B}{FF3D}\\
+\Bracket{{}{}} \BracketUCS{FF5B}{FF5D}\\
+\Bracket{⦅}{⦆} \BracketUCS{FF5F}{FF60}\\
+
+}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/punct0.tex b/language/japanese/japanese-otf-uptex/test/uplatex/punct0.tex
new file mode 100644
index 0000000000..1d46dcf910
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/punct0.tex
@@ -0,0 +1,31 @@
+% -*- coding: utf-8 -*-
+
+%\Punct{·} \PunctUCS{00B7}\\% Adobe-Japan1-6には和文用グリフがない
+\Punct{・} \PunctUCS{30FB}\\
+\Punct{:} \PunctUCS{FF1A}\\
+\Punct{;} \PunctUCS{FF1B}\\
+\Punct{、} \PunctUCS{3001}\\
+\Punct{。} \PunctUCS{3002}\\
+\Punct{,} \PunctUCS{FF0C}\\
+\Punct{.} \PunctUCS{FF0E}\\
+\Punct{—} \PunctUCS{2014}\\
+\Punct{―} \PunctUCS{2015}\\
+\Punct{‥} \PunctUCS{2025}\\
+\Punct{…} \PunctUCS{2026}\\
+
+\parbox<t>{15.5zw}{
+
+%\Punct{·} \PunctUCS{00B7}\\% Adobe-Japan1-6には和文用グリフがない
+\Punct{・} \PunctUCS{30FB}\\
+\Punct{:} \PunctUCS{FF1A}\\
+%\Punct{;} \PunctUCS{FF1B}\\% Adobe-Japan1-6には縦組み用グリフがない
+\Punct{、} \PunctUCS{3001}\\
+\Punct{。} \PunctUCS{3002}\\
+\Punct{,} \PunctUCS{FF0C}\\
+\Punct{.} \PunctUCS{FF0E}\\
+\Punct{—} \PunctUCS{2014}\\
+\Punct{―} \PunctUCS{2015}\\
+\Punct{‥} \PunctUCS{2025}\\
+\Punct{…} \PunctUCS{2026}\\
+
+}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/punctuation.tex b/language/japanese/japanese-otf-uptex/test/uplatex/punctuation.tex
new file mode 100644
index 0000000000..72c981b8f3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/punctuation.tex
@@ -0,0 +1,181 @@
+% -*- coding: utf-8 -*-
+\makeatletter
+
+\def\@opt@{uplatex}
+\def\@default{default}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\documentclass[twocolumn]{ujarticle}
+\textwidth 170mm
+\textheight 255mm
+\voffset -10mm
+\topmargin 0mm
+\headheight 0mm
+\headsep 0mm
+\leftmargin 0mm
+\rightmargin 0mm
+
+\usepackage{color}
+\usepackage{plext}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+
+\newcommand{\Bracket}[2]{%
+ \textcolor{green}{\fbox{\textcolor{black}{#1}}}雪%
+ \textcolor{green}{\fbox{\textcolor{black}{#2}}}%
+ \textcolor{green}{\fbox{\textcolor{black}{\inhibitglue #1}}}雪%
+ \textcolor{green}{\fbox{\textcolor{black}{#2\inhibitglue}}}%
+%%% vvv 色無し vvv %%%
+% \fbox{#1}雪\fbox{#2}%
+% \fbox{\inhibitglue #1}雪\fbox{#2\inhibitglue}%
+}
+\newcommand{\BracketUCS}[2]{%
+ \Bracket{\kchar"#1}{\kchar"#2} {\footnotesize U+#1, U+#2}%
+}
+\newcommand{\Punct}[1]{%
+ 雪\textcolor{green}{\fbox{\textcolor{black}{#1}}}雪%
+ \textcolor{green}{\fbox{\textcolor{black}{\inhibitglue #1\inhibitglue}}}雪%
+%%% vvv 色無し vvv %%%
+% 雪\fbox{#1}雪%
+% \fbox{\inhibitglue #1\inhibitglue}雪%
+}
+\newcommand{\PunctUCS}[1]{%
+ \Punct{\kchar"#1} {\footnotesize U+#1}%"
+}
+
+\makeatletter
+\ifx\rubyfamily\@undefined\let\rubyfamily=\relax\fi
+\ifx\mgfamily\@undefined\let\mgfamily=\relax\fi
+\makeatother
+
+\begin{document}
+\parindent0pt
+\fboxsep0pt
+
+オプション:\texttt{\option}
+
+\section{括弧類}
+{
+[mc/m]
+
+\input{paren0.tex}
+
+{\bfseries%
+[mc/bx]
+
+\input{paren0.tex}
+}}
+
+{\gtfamily
+[gt/m]
+
+\input{paren0.tex}
+
+{\bfseries%
+[gt/bx]
+
+\input{paren0.tex}
+}}
+
+{\mgfamily
+[mg/m]
+
+\input{paren0.tex}
+}
+
+{\rubyfamily%
+[ruby/m]
+
+\input{paren0.tex}
+
+{\bfseries%
+[ruby/bx]
+
+\input{paren0.tex}
+}}
+
+{\gtfamily\rubyfamily%
+[rubyg/m]
+
+\input{paren0.tex}
+
+{\gtfamily\rubyfamily\bfseries%
+[rubyg/bx]
+
+\input{paren0.tex}
+}}
+
+{\mgfamily\rubyfamily%
+[rubymg/m]
+
+\input{paren0.tex}
+}
+
+
+\section{句読点など}
+{
+[mc/m]
+
+\input{punct0.tex}
+
+{\bfseries%
+[mc/bx]
+
+\input{punct0.tex}
+}}
+
+{\gtfamily
+[gt/m]
+
+\input{punct0.tex}
+
+{\bfseries%
+[gt/bx]
+
+\input{punct0.tex}
+}}
+
+{\mgfamily
+[mg/m]
+
+\input{punct0.tex}
+}
+
+{\rubyfamily%
+[ruby/m]
+
+\input{punct0.tex}
+
+{\bfseries%
+[ruby/bx]
+
+\input{punct0.tex}
+}}
+
+{\gtfamily\rubyfamily%
+[rubyg/m]
+
+\input{punct0.tex}
+
+{\gtfamily\rubyfamily\bfseries%
+[rubyg/bx]
+
+\input{punct0.tex}
+}}
+
+{\mgfamily\rubyfamily%
+[rubymg/m]
+
+\input{punct0.tex}
+}
+
+\end{document}
+
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/sp_cns_utf.tex b/language/japanese/japanese-otf-uptex/test/uplatex/sp_cns_utf.tex
new file mode 100644
index 0000000000..fdd6023915
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/sp_cns_utf.tex
@@ -0,0 +1,204 @@
+%
+% This file is generated from the data of UniCNS-UTF32
+% in cid2code.txt (Version 10/24/2017)
+% for Adobe-CNS1-7
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-CNS1-7/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+Adobe-CNS1-0\\
+\UTFT{200CC}\UTFT{2008A}\UTFT{27607}
+
+Adobe-CNS1-1\\
+\UTFT{23ED7}\UTFT{26ED3}\UTFT{257E0}\UTFT{28BE9}\UTFT{258E1}\UTFT{294D9}\UTFT{259AC}\UTFT{2648D}\UTFT{25C01}\UTFT{2530E}%
+\UTFT{25CFE}\UTFT{25BB4}\UTFT{26C7F}\UTFT{25D20}\UTFT{25CC1}\UTFT{24882}\UTFT{24578}\UTFT{26E44}\UTFT{26ED6}\UTFT{24057}%
+\UTFT{26029}\UTFT{217F9}\UTFT{2836D}\UTFT{26121}\UTFT{2615A}\UTFT{262D0}\UTFT{26351}\UTFT{21661}\UTFT{20068}\UTFT{23766}%
+\UTFT{2833A}\UTFT{26489}\UTFT{2A087}\UTFT{26CC3}\UTFT{22714}\UTFT{26626}\UTFT{23DE3}\UTFT{266E8}\UTFT{28A48}\UTFT{226F6}%
+\UTFT{26498}\UTFT{2148A}\UTFT{2185E}\UTFT{24A65}\UTFT{24A95}\UTFT{26A52}\UTFT{23D7E}\UTFT{214FD}\UTFT{2F98F}\UTFT{249A7}%
+\UTFT{23530}\UTFT{21773}\UTFT{23DF8}\UTFT{2F994}\UTFT{20E16}\UTFT{217B4}\UTFT{2317D}\UTFT{2355A}\UTFT{23E8B}\UTFT{26DA3}%
+\UTFT{26B05}\UTFT{26B97}\UTFT{235CE}\UTFT{26DA5}\UTFT{26ED4}\UTFT{26E42}\UTFT{25BE4}\UTFT{26B96}\UTFT{26E77}\UTFT{26E43}%
+\UTFT{25C91}\UTFT{25CC0}\UTFT{28625}\UTFT{2863B}\UTFT{27088}\UTFT{21582}\UTFT{270CD}\UTFT{270F0}\UTFT{2F9B2}\UTFT{218A2}%
+\UTFT{2739A}\UTFT{2A0F8}\UTFT{22C27}\UTFT{275E0}\UTFT{23DB9}\UTFT{275E4}\UTFT{2770F}\UTFT{28A25}\UTFT{27924}\UTFT{27ABD}%
+\UTFT{27A59}\UTFT{27B3A}\UTFT{27B38}\UTFT{25430}\UTFT{25565}\UTFT{24A7A}\UTFT{216DF}\UTFT{27D54}\UTFT{27D8F}\UTFT{2F9D4}%
+\UTFT{27D53}\UTFT{27D98}\UTFT{27DBD}\UTFT{21910}\UTFT{2F9D7}\UTFT{28002}\UTFT{21014}\UTFT{2498A}\UTFT{281BC}\UTFT{2710C}%
+\UTFT{28365}\UTFT{28412}\UTFT{2A29F}\UTFT{20A50}\UTFT{289DE}\UTFT{2853D}\UTFT{23DBB}\UTFT{23262}\UTFT{22325}\UTFT{26ED7}%
+\UTFT{2853C}\UTFT{27ABE}\UTFT{2856C}\UTFT{2860B}\UTFT{28713}\UTFT{286E6}\UTFT{28933}\UTFT{21E89}\UTFT{255B9}\UTFT{28AC6}%
+\UTFT{23C9B}\UTFT{28B0C}\UTFT{255DB}\UTFT{20D31}\UTFT{28AE1}\UTFT{28BEB}\UTFT{28AE2}\UTFT{28AE5}\UTFT{28BEC}\UTFT{28C39}%
+\UTFT{28BFF}\UTFT{286D8}\UTFT{2127C}\UTFT{23E2E}\UTFT{26ED5}\UTFT{28AE0}\UTFT{26CB8}\UTFT{20274}\UTFT{26410}\UTFT{290AF}%
+\UTFT{290E5}\UTFT{24AD1}\UTFT{21915}\UTFT{2330A}\UTFT{24AE9}\UTFT{291D5}\UTFT{291EB}\UTFT{230B7}\UTFT{230BC}\UTFT{2546C}%
+\UTFT{29433}\UTFT{2941D}\UTFT{2797A}\UTFT{27175}\UTFT{20630}\UTFT{2415C}\UTFT{25706}\UTFT{26D27}\UTFT{216D3}\UTFT{24A29}%
+\UTFT{29857}\UTFT{29905}\UTFT{25725}\UTFT{290B1}\UTFT{29BD5}\UTFT{29B05}\UTFT{28600}\UTFT{2307D}\UTFT{29D3E}\UTFT{21863}%
+\UTFT{29E68}\UTFT{29FB7}\UTFT{2A192}\UTFT{2A1AB}\UTFT{2A0E1}\UTFT{2A123}\UTFT{2A1DF}\UTFT{2A134}\UTFT{2A193}\UTFT{2A220}%
+\UTFT{2193B}\UTFT{2A233}\UTFT{2A0B9}\UTFT{2A2B4}\UTFT{24364}\UTFT{2A3ED}\UTFT{28C2B}\UTFT{26DA2}\UTFT{2FA1B}\UTFT{2908B}%
+\UTFT{24975}\UTFT{249BB}\UTFT{249F8}\UTFT{24348}\UTFT{24A51}\UTFT{28BDA}\UTFT{218FA}\UTFT{2897E}\UTFT{28E36}\UTFT{28A44}%
+\UTFT{2896C}\UTFT{244B9}\UTFT{24473}\UTFT{243F8}\UTFT{217EF}\UTFT{218BE}\UTFT{23599}\UTFT{21885}\UTFT{2542F}\UTFT{217F8}%
+\UTFT{216FB}\UTFT{21839}\UTFT{21774}\UTFT{218D1}\UTFT{25F4B}\UTFT{216C0}\UTFT{24A25}\UTFT{213FE}\UTFT{212A8}\UTFT{213C6}%
+\UTFT{214B6}\UTFT{236A6}\UTFT{24994}\UTFT{27165}\UTFT{23E31}\UTFT{2555C}\UTFT{23EFB}\UTFT{27052}\UTFT{236EE}\UTFT{2999D}%
+\UTFT{26F26}\UTFT{21922}\UTFT{2373F}\UTFT{240E1}\UTFT{2408B}\UTFT{2410F}\UTFT{26C21}\UTFT{266B1}\UTFT{20FDF}\UTFT{20BA8}%
+\UTFT{20E0D}\UTFT{28B13}\UTFT{24436}\UTFT{20465}\UTFT{25651}\UTFT{201AB}\UTFT{203CB}\UTFT{2030A}\UTFT{20414}\UTFT{202C0}%
+\UTFT{28EB3}\UTFT{20275}\UTFT{2020C}\UTFT{24A0E}\UTFT{23E8A}\UTFT{23595}\UTFT{23E39}\UTFT{23EBF}\UTFT{21884}\UTFT{23E89}%
+\UTFT{205E0}\UTFT{204A3}\UTFT{20492}\UTFT{20491}\UTFT{28A9C}\UTFT{2070E}\UTFT{20873}\UTFT{2438C}\UTFT{20C20}\UTFT{249AC}%
+\UTFT{210E4}\UTFT{20E1D}\UTFT{24ABC}\UTFT{2408D}\UTFT{240C9}\UTFT{20345}\UTFT{20BC6}\UTFT{28A46}\UTFT{216FA}\UTFT{2176F}%
+\UTFT{21710}\UTFT{25946}\UTFT{219F3}\UTFT{21861}\UTFT{24295}\UTFT{25E83}\UTFT{28BD7}\UTFT{20413}\UTFT{21303}\UTFT{289FB}%
+\UTFT{21996}\UTFT{2197C}\UTFT{23AEE}\UTFT{21903}\UTFT{21904}\UTFT{218A0}\UTFT{216FE}\UTFT{28A47}\UTFT{21DBA}\UTFT{23472}%
+\UTFT{289A8}\UTFT{21927}\UTFT{217AB}\UTFT{2173B}\UTFT{275FD}\UTFT{22860}\UTFT{2262B}\UTFT{225AF}\UTFT{225BE}\UTFT{29088}%
+\UTFT{26F73}\UTFT{2003E}\UTFT{20046}\UTFT{2261B}\UTFT{22C9B}\UTFT{22D07}\UTFT{246D4}\UTFT{2914D}\UTFT{24665}\UTFT{22B6A}%
+\UTFT{22B22}\UTFT{23450}\UTFT{298EA}\UTFT{22E78}\UTFT{249E3}\UTFT{22D67}\UTFT{22CA1}\UTFT{2308E}\UTFT{232AD}\UTFT{24989}%
+\UTFT{232AB}\UTFT{232E0}\UTFT{218D9}\UTFT{2943F}\UTFT{23289}\UTFT{231B3}\UTFT{25584}\UTFT{28B22}\UTFT{2558F}\UTFT{216FC}%
+\UTFT{2555B}\UTFT{25425}\UTFT{23103}\UTFT{2182A}\UTFT{23234}\UTFT{2320F}\UTFT{23182}\UTFT{242C9}\UTFT{26D24}\UTFT{27870}%
+\UTFT{21DEB}\UTFT{232D2}\UTFT{232E1}\UTFT{25872}\UTFT{2383A}\UTFT{237BC}\UTFT{237A2}\UTFT{233FE}\UTFT{2462A}\UTFT{237D5}%
+\UTFT{24487}\UTFT{21912}\UTFT{23FC0}\UTFT{23C9A}\UTFT{28BEA}\UTFT{28ACB}\UTFT{2801E}\UTFT{289DC}\UTFT{23F7F}\UTFT{2403C}%
+\UTFT{2431A}\UTFT{24276}\UTFT{2478F}\UTFT{24725}\UTFT{24AA4}\UTFT{205EB}\UTFT{23EF8}\UTFT{2365F}\UTFT{24A4A}\UTFT{24917}%
+\UTFT{25FE1}\UTFT{24ADF}\UTFT{28C23}\UTFT{23F35}\UTFT{26DEA}\UTFT{24CD9}\UTFT{24D06}\UTFT{2A5C6}\UTFT{28ACC}\UTFT{249AB}%
+\UTFT{2498E}\UTFT{24A4E}\UTFT{249C5}\UTFT{248F3}\UTFT{28AE3}\UTFT{21864}\UTFT{25221}\UTFT{251E7}\UTFT{23232}\UTFT{24697}%
+\UTFT{23781}\UTFT{248F0}\UTFT{24ABA}\UTFT{24AC7}\UTFT{24A96}\UTFT{261AE}\UTFT{25581}\UTFT{27741}\UTFT{256E3}\UTFT{23EFA}%
+\UTFT{216E6}\UTFT{20D4C}\UTFT{2498C}\UTFT{20299}\UTFT{23DBA}\UTFT{2176E}\UTFT{201D4}\UTFT{20C0D}\UTFT{226F5}\UTFT{25AAF}%
+\UTFT{25A9C}\UTFT{2025B}\UTFT{25BC6}\UTFT{25BB3}\UTFT{25EBC}\UTFT{25EA6}\UTFT{249F9}\UTFT{217B0}\UTFT{26261}\UTFT{2615C}%
+\UTFT{27B48}\UTFT{25E82}\UTFT{26B75}\UTFT{20916}\UTFT{2004E}\UTFT{235CF}\UTFT{26412}\UTFT{263F8}\UTFT{2082C}\UTFT{25AE9}%
+\UTFT{25D43}\UTFT{25E0E}\UTFT{2343F}\UTFT{249F7}\UTFT{265AD}\UTFT{265A0}\UTFT{27127}\UTFT{26CD1}\UTFT{267B4}\UTFT{26A42}%
+\UTFT{26A51}\UTFT{26DA7}\UTFT{2721B}\UTFT{21840}\UTFT{218A1}\UTFT{218D8}\UTFT{2F9BC}\UTFT{23D8F}\UTFT{27422}\UTFT{25683}%
+\UTFT{27785}\UTFT{27784}\UTFT{28BF5}\UTFT{28BD9}\UTFT{28B9C}\UTFT{289F9}\UTFT{29448}\UTFT{24284}\UTFT{21845}\UTFT{27DDC}%
+\UTFT{24C09}\UTFT{22321}\UTFT{217DA}\UTFT{2492F}\UTFT{28A4B}\UTFT{28AFC}\UTFT{28C1D}\UTFT{28C3B}\UTFT{28D34}\UTFT{248FF}%
+\UTFT{24A42}\UTFT{243EA}\UTFT{23225}\UTFT{28EE7}\UTFT{28E66}\UTFT{28E65}\UTFT{249ED}\UTFT{24A78}\UTFT{23FEE}\UTFT{290B0}%
+\UTFT{29093}\UTFT{257DF}\UTFT{28989}\UTFT{28C26}\UTFT{28B2F}\UTFT{263BE}\UTFT{2421B}\UTFT{20F26}\UTFT{28BC5}\UTFT{24AB2}%
+\UTFT{294DA}\UTFT{295D7}\UTFT{28B50}\UTFT{24A67}\UTFT{28B64}\UTFT{28A45}\UTFT{27B06}\UTFT{28B65}\UTFT{258C8}\UTFT{298F1}%
+\UTFT{29948}\UTFT{21302}\UTFT{249B8}\UTFT{214E8}\UTFT{2271F}\UTFT{23DB8}\UTFT{22781}\UTFT{2296B}\UTFT{29E2D}\UTFT{2A1F5}%
+\UTFT{2A0FE}\UTFT{24104}\UTFT{2A1B4}\UTFT{2A0ED}\UTFT{2A0F3}\UTFT{2992F}\UTFT{26E12}\UTFT{26FDF}\UTFT{26B82}\UTFT{26DA4}%
+\UTFT{26E84}\UTFT{26DF0}\UTFT{26E00}\UTFT{237D7}\UTFT{26064}\UTFT{2359C}\UTFT{23640}\UTFT{249DE}\UTFT{202BF}\UTFT{2555D}%
+\UTFT{21757}\UTFT{231C9}\UTFT{24941}\UTFT{241B5}\UTFT{241AC}\UTFT{26C40}\UTFT{24F97}\UTFT{217B5}\UTFT{28A49}\UTFT{24488}%
+\UTFT{289FC}\UTFT{218D6}\UTFT{20F1D}\UTFT{26CC0}\UTFT{21413}\UTFT{242FA}\UTFT{22C26}\UTFT{243C1}\UTFT{23DB7}\UTFT{26741}%
+\UTFT{2615B}\UTFT{260A4}\UTFT{249B9}\UTFT{2498B}\UTFT{289FA}\UTFT{28B63}\UTFT{2189F}\UTFT{24AB3}\UTFT{24A3E}\UTFT{24A94}%
+\UTFT{217D9}\UTFT{24A66}\UTFT{203A7}\UTFT{21424}\UTFT{249E5}\UTFT{24916}\UTFT{24976}\UTFT{204FE}\UTFT{28ACE}\UTFT{28A16}%
+\UTFT{28BE7}\UTFT{255D5}\UTFT{28A82}\UTFT{24943}\UTFT{20CFF}\UTFT{2061A}\UTFT{20BEB}\UTFT{20CB8}\UTFT{217FA}\UTFT{216C2}%
+\UTFT{24A50}\UTFT{21852}\UTFT{28AC0}\UTFT{249AD}\UTFT{218BF}\UTFT{21883}\UTFT{27484}\UTFT{23D5B}\UTFT{28A81}\UTFT{21862}%
+\UTFT{20AB4}\UTFT{2139C}\UTFT{28218}\UTFT{290E4}\UTFT{27E4F}\UTFT{23FED}\UTFT{23E2D}\UTFT{203F5}\UTFT{28C1C}\UTFT{26BC0}%
+\UTFT{21452}\UTFT{24362}\UTFT{24A71}\UTFT{22FE3}\UTFT{212B0}\UTFT{223BD}\UTFT{21398}\UTFT{234E5}\UTFT{27BF4}\UTFT{236DF}%
+\UTFT{28A83}\UTFT{237D6}\UTFT{233FA}\UTFT{24C9F}\UTFT{236AD}\UTFT{26CB7}\UTFT{26D26}\UTFT{26D51}\UTFT{26C82}\UTFT{26FDE}%
+\UTFT{2173A}\UTFT{26C80}\UTFT{27053}\UTFT{217DB}\UTFT{217B3}\UTFT{21905}\UTFT{241FC}\UTFT{2173C}\UTFT{242A5}\UTFT{24293}%
+\UTFT{23EF9}\UTFT{27736}\UTFT{2445B}\UTFT{242CA}\UTFT{24259}\UTFT{289E1}\UTFT{26D28}\UTFT{244CE}\UTFT{27E4D}\UTFT{243BD}%
+\UTFT{24256}\UTFT{21304}\UTFT{243E9}\UTFT{2F825}\UTFT{23300}\UTFT{27AF4}\UTFT{256F6}\UTFT{27B18}\UTFT{27A79}\UTFT{249BA}%
+\UTFT{20346}\UTFT{27657}\UTFT{25FE2}\UTFT{275FE}\UTFT{2209A}\UTFT{28A9A}\UTFT{2403B}\UTFT{24A45}\UTFT{205CA}\UTFT{20611}%
+\UTFT{21EA8}\UTFT{23CFF}\UTFT{285E8}\UTFT{299C9}\UTFT{221C3}\UTFT{28B4E}\UTFT{20C78}\UTFT{20779}\UTFT{23F4A}\UTFT{24AA7}%
+\UTFT{26B52}\UTFT{27632}\UTFT{2493F}\UTFT{233CC}\UTFT{28948}\UTFT{21D90}\UTFT{27C12}\UTFT{24F9A}\UTFT{26BF7}\UTFT{2191C}%
+\UTFT{249F6}\UTFT{23FEF}\UTFT{2271B}\UTFT{257E1}\UTFT{2F8CD}\UTFT{2F806}\UTFT{24521}\UTFT{24934}\UTFT{26CBD}\UTFT{26411}%
+\UTFT{290C0}\UTFT{20A11}\UTFT{26469}\UTFT{20021}\UTFT{23519}\UTFT{2258D}\UTFT{2217A}\UTFT{249D0}\UTFT{20EF8}\UTFT{22926}%
+\UTFT{28473}\UTFT{217B1}\UTFT{24A2A}\UTFT{21820}\UTFT{29CAD}\UTFT{298A4}\UTFT{2160A}\UTFT{2372F}\UTFT{280E8}\UTFT{213C5}%
+\UTFT{291A8}\UTFT{270AF}\UTFT{289AB}\UTFT{2417A}\UTFT{2A2DF}\UTFT{28318}\UTFT{26E07}\UTFT{2816F}\UTFT{269B5}\UTFT{213ED}%
+\UTFT{2322F}\UTFT{28C30}\UTFT{28949}\UTFT{24988}\UTFT{24AA5}\UTFT{23F81}\UTFT{21FA1}\UTFT{295E9}\UTFT{2789D}\UTFT{28024}%
+\UTFT{27A3E}\UTFT{23CB7}\UTFT{26258}\UTFT{29D98}\UTFT{23D40}\UTFT{20E9D}\UTFT{282E2}\UTFT{20C41}\UTFT{20C96}\UTFT{20E76}%
+\UTFT{22C62}\UTFT{20EA2}\UTFT{21075}\UTFT{22B43}\UTFT{22EB3}\UTFT{20DA7}\UTFT{2688A}\UTFT{20EF9}\UTFT{27FF9}\UTFT{247E0}%
+\UTFT{29D7C}\UTFT{275A3}\UTFT{26048}\UTFT{24618}\UTFT{29EAC}\UTFT{29FDE}\UTFT{272B2}\UTFT{2048E}\UTFT{20EB6}\UTFT{27F2E}%
+\UTFT{2A434}\UTFT{243F2}\UTFT{29E06}\UTFT{294D0}\UTFT{26335}\UTFT{20D28}\UTFT{20D71}\UTFT{21F0F}\UTFT{21DD1}\UTFT{2176D}%
+\UTFT{2B473}\UTFT{28E97}\UTFT{25C21}\UTFT{20CD4}\UTFT{201F2}\UTFT{2A64A}\UTFT{2837D}\UTFT{2A2B2}\UTFT{24ABB}\UTFT{26E05}%
+\UTFT{2AE67}\UTFT{2251B}\UTFT{2DF3C}\UTFT{28E39}\UTFT{20F3B}\UTFT{25F1A}\UTFT{27486}\UTFT{267CC}\UTFT{24011}\UTFT{2F922}%
+\UTFT{20547}\UTFT{205DF}\UTFT{23FC5}\UTFT{24942}\UTFT{289E4}\UTFT{219DB}\UTFT{23CC8}\UTFT{24933}\UTFT{289AA}\UTFT{202A0}%
+\UTFT{26BB3}\UTFT{21305}\UTFT{224ED}\UTFT{26D29}\UTFT{27A84}\UTFT{23600}\UTFT{24AB1}\UTFT{22513}\UTFT{2037E}\UTFT{20380}%
+\UTFT{20347}\UTFT{2041F}\UTFT{249A4}\UTFT{20487}\UTFT{233B4}\UTFT{20BFF}\UTFT{220FC}\UTFT{202E5}\UTFT{22530}\UTFT{2058E}%
+\UTFT{23233}\UTFT{21983}\UTFT{205B3}\UTFT{23C99}\UTFT{24AA6}\UTFT{2372D}\UTFT{26B13}\UTFT{2F829}\UTFT{28ADE}\UTFT{23F80}%
+\UTFT{20954}\UTFT{23FEC}\UTFT{20BE2}\UTFT{21726}\UTFT{216E8}\UTFT{286AB}\UTFT{2F832}\UTFT{21596}\UTFT{21613}\UTFT{28A9B}%
+\UTFT{25772}\UTFT{20B8F}\UTFT{23FEB}\UTFT{22DA3}\UTFT{20C77}\UTFT{26B53}\UTFT{20D74}\UTFT{2170D}\UTFT{20EDD}\UTFT{20D4D}%
+\UTFT{289BC}\UTFT{22698}\UTFT{218D7}\UTFT{2403A}\UTFT{24435}\UTFT{210B4}\UTFT{2328A}\UTFT{28B66}\UTFT{2124F}\UTFT{241A5}%
+\UTFT{26C7E}\UTFT{21416}\UTFT{21454}\UTFT{24363}\UTFT{24BF5}\UTFT{2123C}\UTFT{2A150}\UTFT{24278}\UTFT{2163E}\UTFT{21692}%
+\UTFT{20D4E}\UTFT{26C81}\UTFT{26D2A}\UTFT{217DC}\UTFT{217FB}\UTFT{217B2}\UTFT{26DA6}\UTFT{21828}\UTFT{216D5}\UTFT{26E45}%
+\UTFT{249A9}\UTFT{26FA1}\UTFT{22554}\UTFT{21911}\UTFT{216B8}\UTFT{27A0E}\UTFT{20204}\UTFT{21A34}\UTFT{259CC}\UTFT{205A5}%
+\UTFT{21B44}\UTFT{21CA5}\UTFT{26B28}\UTFT{21DF9}\UTFT{21E37}\UTFT{21EA4}\UTFT{24901}\UTFT{22049}\UTFT{22173}\UTFT{244BC}%
+\UTFT{20CD3}\UTFT{21771}\UTFT{28482}\UTFT{201C1}\UTFT{2F894}\UTFT{2133A}\UTFT{26888}\UTFT{223D0}\UTFT{22471}\UTFT{26E6E}%
+\UTFT{28A36}\UTFT{25250}\UTFT{21F6A}\UTFT{270F8}\UTFT{22668}\UTFT{2029E}\UTFT{28A29}\UTFT{227B4}\UTFT{24982}\UTFT{2498F}%
+\UTFT{27A53}\UTFT{2F8A6}\UTFT{26ED2}\UTFT{20656}\UTFT{23FB7}\UTFT{2285F}\UTFT{28B9D}\UTFT{2995D}\UTFT{22980}\UTFT{228C1}%
+\UTFT{20118}\UTFT{21770}\UTFT{22E0D}\UTFT{249DF}\UTFT{2138E}\UTFT{217FC}\UTFT{22E36}\UTFT{2571D}\UTFT{24A28}\UTFT{24A23}%
+\UTFT{24940}\UTFT{21829}\UTFT{23400}\UTFT{231F7}\UTFT{231F8}\UTFT{231A4}\UTFT{231A5}\UTFT{20E75}\UTFT{251E6}\UTFT{23231}%
+\UTFT{285F4}\UTFT{231C8}\UTFT{25313}\UTFT{228F7}\UTFT{2439C}\UTFT{24A21}\UTFT{237C2}\UTFT{2F8DB}\UTFT{241CD}\UTFT{290ED}%
+\UTFT{233E6}\UTFT{26DA0}\UTFT{2346F}\UTFT{28ADF}\UTFT{235CD}\UTFT{2363C}\UTFT{28A4A}\UTFT{203C9}\UTFT{23659}\UTFT{2212A}%
+\UTFT{23703}\UTFT{2919C}\UTFT{20923}\UTFT{227CD}\UTFT{23ADB}\UTFT{21958}\UTFT{23B5A}\UTFT{23EFC}\UTFT{2248B}\UTFT{248F1}%
+\UTFT{26B51}\UTFT{23DBC}\UTFT{23DBD}\UTFT{241A4}\UTFT{2490C}\UTFT{24900}\UTFT{23CC9}\UTFT{20D32}\UTFT{231F9}\UTFT{22491}%
+\UTFT{26D25}\UTFT{26DA1}\UTFT{26DEB}\UTFT{2497F}\UTFT{24085}\UTFT{26E72}\UTFT{26F74}\UTFT{28B21}\UTFT{2F908}\UTFT{23E2F}%
+\UTFT{23F82}\UTFT{2304B}\UTFT{23E30}\UTFT{21497}\UTFT{2403D}\UTFT{29170}\UTFT{24144}\UTFT{24091}\UTFT{24155}\UTFT{24039}%
+\UTFT{23FF0}\UTFT{23FB4}\UTFT{2413F}\UTFT{24156}\UTFT{24157}\UTFT{24140}\UTFT{261DD}\UTFT{24277}\UTFT{24365}\UTFT{242C1}%
+\UTFT{2445A}\UTFT{24A27}\UTFT{24A22}\UTFT{28BE8}\UTFT{25605}\UTFT{24974}\UTFT{23044}\UTFT{24823}\UTFT{2882B}\UTFT{28804}%
+\UTFT{20C3A}\UTFT{26A2E}\UTFT{241E2}\UTFT{216E7}\UTFT{24A24}\UTFT{249B7}\UTFT{2498D}\UTFT{249FB}\UTFT{24A26}\UTFT{2F92F}%
+\UTFT{228AD}\UTFT{28EB2}\UTFT{24A8C}\UTFT{2415F}\UTFT{24A79}\UTFT{28B8F}\UTFT{28C03}\UTFT{2189E}\UTFT{21988}\UTFT{28ED9}%
+\UTFT{21A4B}\UTFT{28EAC}\UTFT{24F82}\UTFT{24D13}\UTFT{263F5}\UTFT{26911}\UTFT{2690E}\UTFT{26F9F}\UTFT{2509D}\UTFT{2517D}%
+\UTFT{21E1C}\UTFT{25220}\UTFT{232AC}\UTFT{28964}\UTFT{28968}\UTFT{216C1}\UTFT{255E0}\UTFT{2760C}\UTFT{2261C}\UTFT{25857}%
+\UTFT{27B39}\UTFT{27126}\UTFT{2910D}\UTFT{20C42}\UTFT{20D15}\UTFT{2512B}\UTFT{22CC6}\UTFT{20341}\UTFT{24DB8}\UTFT{294E5}%
+\UTFT{280BE}\UTFT{22C38}\UTFT{2815D}\UTFT{269F2}\UTFT{24DEA}\UTFT{20D7C}\UTFT{20FB4}\UTFT{20CD5}\UTFT{2BAB3}\UTFT{20E96}%
+\UTFT{20F64}\UTFT{22CA9}\UTFT{28256}\UTFT{244D3}\UTFT{20D46}\UTFT{29A4D}\UTFT{280E9}\UTFT{24EA7}\UTFT{22CC2}\UTFT{295F4}%
+\UTFT{252C7}\UTFT{297D4}\UTFT{22D44}\UTFT{2BCD7}\UTFT{22BCA}\UTFT{2B977}\UTFT{266DA}\UTFT{26716}\UTFT{279A0}\UTFT{25052}%
+\UTFT{20C43}\UTFT{28B4C}\UTFT{20731}\UTFT{201A9}\UTFT{22D8D}\UTFT{245C8}\UTFT{204FC}\UTFT{26097}\UTFT{20F4C}\UTFT{22A66}%
+\UTFT{2109D}\UTFT{20D9C}\UTFT{22775}\UTFT{2A601}\UTFT{20E09}\UTFT{22ACF}\UTFT{2C5F8}\UTFT{210C8}\UTFT{239C2}\UTFT{2829B}%
+\UTFT{25E49}\UTFT{220C7}\UTFT{22CB2}\UTFT{29720}\UTFT{24E3B}\UTFT{2C9A0}\UTFT{27574}\UTFT{22E8B}\UTFT{22208}\UTFT{2A65B}%
+\UTFT{28CCD}\UTFT{20E7A}\UTFT{20C34}\UTFT{27639}\UTFT{22BCE}\UTFT{22C51}\UTFT{210C7}\UTFT{2A632}\UTFT{28CD2}\UTFT{28D99}%
+\UTFT{28CCA}\UTFT{2775E}\UTFT{2F828}\UTFT{2107B}\UTFT{210D3}\UTFT{212FE}\UTFT{247EF}\UTFT{24EA5}\UTFT{24F5C}\UTFT{28189}%
+\UTFT{2B42C}
+
+Adobe-CNS1-3\\
+\UTFT{2010C}\UTFT{200D1}\UTFT{200CD}\UTFT{200CB}\UTFT{21FE8}\UTFT{200CA}\UTFT{2010E}\UTFT{21BC1}\UTFT{2F878}\UTFT{20086}%
+\UTFT{248E9}\UTFT{2626A}\UTFT{2634B}\UTFT{26612}\UTFT{26951}\UTFT{278B2}\UTFT{28E0F}\UTFT{29810}\UTFT{20087}\UTFT{2A3A9}%
+\UTFT{21145}\UTFT{27735}\UTFT{209E7}\UTFT{29DF6}\UTFT{2700E}\UTFT{2A133}\UTFT{2846C}\UTFT{21DCA}\UTFT{205D0}\UTFT{22AE6}%
+\UTFT{27D84}\UTFT{210F4}\UTFT{20C0B}\UTFT{278C8}\UTFT{260A5}\UTFT{22D4C}\UTFT{21077}\UTFT{2106F}\UTFT{221A1}\UTFT{20D96}%
+\UTFT{22CC9}\UTFT{20F31}\UTFT{2681C}\UTFT{210CF}\UTFT{22803}\UTFT{22939}\UTFT{251E3}\UTFT{20E8C}\UTFT{20F8D}\UTFT{20EAA}%
+\UTFT{20F30}\UTFT{20D47}\UTFT{2114F}\UTFT{20E4C}\UTFT{20EAB}\UTFT{20BA9}\UTFT{20D48}\UTFT{210C0}\UTFT{2113D}\UTFT{22696}%
+\UTFT{20FAD}\UTFT{233F4}\UTFT{20D7E}\UTFT{20D7F}\UTFT{22C55}\UTFT{20E98}\UTFT{20F2E}\UTFT{26B50}\UTFT{29EC3}\UTFT{22DEE}%
+\UTFT{26572}\UTFT{280BD}\UTFT{20EFA}\UTFT{20E0F}\UTFT{20E77}\UTFT{20EFB}\UTFT{24DEB}\UTFT{20CD6}\UTFT{227B5}\UTFT{210C9}%
+\UTFT{20E10}\UTFT{20E78}\UTFT{21078}\UTFT{21148}\UTFT{28207}\UTFT{21455}\UTFT{20E79}\UTFT{24E50}\UTFT{22DA4}\UTFT{2101D}%
+\UTFT{2101E}\UTFT{210F5}\UTFT{210F6}\UTFT{20E11}\UTFT{27694}\UTFT{282CD}\UTFT{20FB5}\UTFT{20E7B}\UTFT{2517E}\UTFT{20FB6}%
+\UTFT{21180}\UTFT{252D8}\UTFT{2A2BD}\UTFT{249DA}\UTFT{2183A}\UTFT{24177}\UTFT{2827C}\UTFT{2573D}\UTFT{25B74}\UTFT{2313D}%
+\UTFT{289C0}\UTFT{23F41}\UTFT{20325}\UTFT{20ED8}\UTFT{25C65}\UTFT{24FB8}\UTFT{20B0D}\UTFT{26B0A}\UTFT{22EEF}\UTFT{23CB5}%
+\UTFT{26E99}\UTFT{23F8F}\UTFT{24CC9}\UTFT{2A014}\UTFT{286BC}\UTFT{28501}\UTFT{2267A}\UTFT{269A8}\UTFT{2424B}\UTFT{2215B}%
+\UTFT{2037F}\UTFT{2A45B}\UTFT{249EC}\UTFT{24962}\UTFT{27109}\UTFT{24A4F}\UTFT{24A5D}\UTFT{217DF}\UTFT{23AFA}\UTFT{20214}%
+\UTFT{208D5}\UTFT{20619}\UTFT{21F9E}\UTFT{2A2B6}\UTFT{2915B}\UTFT{28A59}\UTFT{29420}\UTFT{248F2}\UTFT{25535}\UTFT{20CCF}%
+\UTFT{27967}\UTFT{21BC2}\UTFT{20094}\UTFT{202B7}\UTFT{203A0}\UTFT{204D7}\UTFT{205D5}\UTFT{20615}\UTFT{20676}\UTFT{216BA}%
+\UTFT{20AC2}\UTFT{20ACD}\UTFT{20BBF}\UTFT{2F83B}\UTFT{20BCB}\UTFT{20BFB}\UTFT{20C3B}\UTFT{20C53}\UTFT{20C65}\UTFT{20C7C}%
+\UTFT{20C8D}\UTFT{20CB5}\UTFT{20CDD}\UTFT{20CED}\UTFT{20D6F}\UTFT{20DB2}\UTFT{20DC8}\UTFT{20E04}\UTFT{20E0E}\UTFT{20ED7}%
+\UTFT{20F90}\UTFT{20F2D}\UTFT{20E73}\UTFT{20FBC}\UTFT{2105C}\UTFT{2104F}\UTFT{21076}\UTFT{21088}\UTFT{21096}\UTFT{210BF}%
+\UTFT{2112F}\UTFT{2113B}\UTFT{212E3}\UTFT{21375}\UTFT{21336}\UTFT{21577}\UTFT{21619}\UTFT{217C3}\UTFT{217C7}\UTFT{2182D}%
+\UTFT{2196A}\UTFT{21A2D}\UTFT{21A45}\UTFT{21C2A}\UTFT{21C70}\UTFT{21CAC}\UTFT{21EC8}\UTFT{21ED5}\UTFT{21F15}\UTFT{22045}%
+\UTFT{2227C}\UTFT{223D7}\UTFT{223FA}\UTFT{2272A}\UTFT{22871}\UTFT{2294F}\UTFT{22967}\UTFT{22993}\UTFT{22AD5}\UTFT{22AE8}%
+\UTFT{22B0E}\UTFT{22B3F}\UTFT{22C4C}\UTFT{22C88}\UTFT{22CB7}\UTFT{25BE8}\UTFT{22D08}\UTFT{22D12}\UTFT{22DB7}\UTFT{22D95}%
+\UTFT{22E42}\UTFT{22F74}\UTFT{22FCC}\UTFT{23033}\UTFT{23066}\UTFT{2331F}\UTFT{233DE}\UTFT{23567}\UTFT{235F3}\UTFT{2361A}%
+\UTFT{23716}\UTFT{23AA7}\UTFT{23E11}\UTFT{23EB9}\UTFT{24119}\UTFT{242EE}\UTFT{2430D}\UTFT{24334}\UTFT{24396}\UTFT{24404}%
+\UTFT{244D6}\UTFT{24674}\UTFT{2472F}\UTFT{24812}\UTFT{248FB}\UTFT{24A15}\UTFT{24AC0}\UTFT{24F86}\UTFT{2502C}\UTFT{25299}%
+\UTFT{25419}\UTFT{25446}\UTFT{2546E}\UTFT{2553F}\UTFT{2555E}\UTFT{25562}\UTFT{25566}\UTFT{257C7}\UTFT{2585D}\UTFT{25903}%
+\UTFT{25AAE}\UTFT{25B89}\UTFT{25C06}\UTFT{26102}\UTFT{261B2}\UTFT{26402}\UTFT{2644A}\UTFT{26484}\UTFT{26488}\UTFT{26512}%
+\UTFT{265BF}\UTFT{266B5}\UTFT{266FC}\UTFT{26799}\UTFT{2686E}\UTFT{2685E}\UTFT{268C7}\UTFT{26926}\UTFT{26939}\UTFT{269FA}%
+\UTFT{26A2D}\UTFT{26A34}\UTFT{26B5B}\UTFT{26B9D}\UTFT{26CA4}\UTFT{26DAE}\UTFT{2704B}\UTFT{271CD}\UTFT{27280}\UTFT{27285}%
+\UTFT{2728B}\UTFT{272E6}\UTFT{27450}\UTFT{277CC}\UTFT{27858}\UTFT{279DD}\UTFT{279FD}\UTFT{27A0A}\UTFT{27B0B}\UTFT{27D66}%
+\UTFT{28009}\UTFT{28023}\UTFT{28048}\UTFT{28083}\UTFT{28090}\UTFT{280F4}\UTFT{2812E}\UTFT{2814F}\UTFT{281AF}\UTFT{2821A}%
+\UTFT{28306}\UTFT{2832F}\UTFT{2838A}\UTFT{28468}\UTFT{286AA}\UTFT{28956}\UTFT{289B8}\UTFT{289E7}\UTFT{289E8}\UTFT{28B46}%
+\UTFT{28BD4}\UTFT{28C09}\UTFT{28FC5}\UTFT{290EC}\UTFT{29110}\UTFT{2913C}\UTFT{2915E}\UTFT{24ACA}\UTFT{294E7}\UTFT{295B0}%
+\UTFT{295B8}\UTFT{29732}\UTFT{298D1}\UTFT{29949}\UTFT{2996A}\UTFT{299C3}\UTFT{29A28}\UTFT{29B0E}\UTFT{29D5A}\UTFT{29D9B}%
+\UTFT{29EF8}\UTFT{29F23}\UTFT{2A293}\UTFT{2A2FF}\UTFT{2A5CB}\UTFT{20C9C}\UTFT{224B0}\UTFT{24A93}\UTFT{28B2C}\UTFT{217F5}%
+\UTFT{28B6C}\UTFT{28B99}\UTFT{266AF}\UTFT{27655}\UTFT{25635}\UTFT{25956}\UTFT{25E81}\UTFT{20E6D}\UTFT{23E88}\UTFT{24C9E}%
+\UTFT{217F6}\UTFT{2187B}\UTFT{25C4A}\UTFT{25311}\UTFT{25ED8}\UTFT{20FEA}\UTFT{20D49}\UTFT{236BA}\UTFT{25148}\UTFT{210C1}%
+\UTFT{24706}\UTFT{26893}\UTFT{226F4}\UTFT{27D2F}\UTFT{241A3}\UTFT{27D73}\UTFT{26ED0}\UTFT{272B6}\UTFT{211D9}\UTFT{23CFC}%
+\UTFT{2A6A9}\UTFT{20EAC}\UTFT{21CA2}\UTFT{24FC2}\UTFT{20FEB}\UTFT{22DA0}\UTFT{20FEC}\UTFT{20E0A}\UTFT{20FED}\UTFT{21187}%
+\UTFT{24B6E}\UTFT{25A95}\UTFT{20979}\UTFT{22465}\UTFT{23CFE}\UTFT{29F30}\UTFT{24FA9}\UTFT{2959E}\UTFT{23DB6}\UTFT{267B3}%
+\UTFT{23720}\UTFT{23EF7}\UTFT{23E2C}\UTFT{230DA}\UTFT{212A9}\UTFT{24963}\UTFT{270AE}\UTFT{2176C}\UTFT{27164}\UTFT{26D22}%
+\UTFT{24AE2}\UTFT{2493E}\UTFT{26D23}\UTFT{203FC}\UTFT{23CFD}\UTFT{24919}\UTFT{24A77}\UTFT{28A5A}\UTFT{2F840}\UTFT{2183B}%
+\UTFT{26159}\UTFT{233F5}\UTFT{28BC2}\UTFT{21D46}\UTFT{26ED1}\UTFT{28B2D}\UTFT{23CC7}\UTFT{25ED7}\UTFT{27656}\UTFT{25531}%
+\UTFT{21944}\UTFT{29903}\UTFT{26DDC}\UTFT{270AD}\UTFT{261AD}\UTFT{28A0F}\UTFT{23677}\UTFT{200EE}\UTFT{26846}\UTFT{24F0E}%
+\UTFT{2634C}\UTFT{2626B}\UTFT{21877}\UTFT{2408C}\UTFT{2307E}\UTFT{21E3D}\UTFT{203B5}\UTFT{205C3}\UTFT{21376}\UTFT{24A12}%
+\UTFT{28B2B}\UTFT{26083}
+
+Adobe-CNS1-4\\
+\UTFT{29C73}\UTFT{2414E}\UTFT{251CD}\UTFT{25D30}\UTFT{28A32}\UTFT{23281}\UTFT{2A107}\UTFT{21980}\UTFT{2870F}\UTFT{2A2BA}%
+\UTFT{29947}\UTFT{28AEA}\UTFT{2207E}\UTFT{289E3}\UTFT{21DB6}\UTFT{22712}\UTFT{233F9}\UTFT{23C63}\UTFT{24505}\UTFT{24A13}%
+\UTFT{25CA4}\UTFT{25695}\UTFT{28DB9}\UTFT{2143F}\UTFT{2497B}\UTFT{2710D}\UTFT{26D74}\UTFT{26B15}\UTFT{26FBE}
+
+Adobe-CNS1-5\\
+\UTFT{27267}\UTFT{27CB1}\UTFT{27CC5}\UTFT{242BF}\UTFT{23617}\UTFT{27352}\UTFT{26E8B}\UTFT{270D2}\UTFT{2A351}\UTFT{27C6C}%
+\UTFT{26B23}\UTFT{25A54}\UTFT{21A63}\UTFT{23E06}\UTFT{23F61}\UTFT{28BB9}\UTFT{27BEF}\UTFT{21D5E}\UTFT{29EB0}\UTFT{29945}%
+\UTFT{20A6F}\UTFT{23256}\UTFT{22796}\UTFT{23B1A}\UTFT{23551}\UTFT{240EC}\UTFT{21E23}\UTFT{201A4}\UTFT{26C41}\UTFT{20239}%
+\UTFT{298FA}\UTFT{20B9F}\UTFT{221C1}\UTFT{2896D}\UTFT{29079}\UTFT{2A1B5}\UTFT{26C46}\UTFT{286B2}\UTFT{273FF}\UTFT{2549A}%
+\UTFT{24B0F}
+
+Adobe-CNS1-6\\
+\UTFT{21D53}\UTFT{2369E}\UTFT{26021}\UTFT{258DE}\UTFT{24161}\UTFT{2890D}\UTFT{231EA}\UTFT{20A8A}\UTFT{2325E}\UTFT{25DB9}%
+\UTFT{2368E}\UTFT{27B65}\UTFT{26E88}\UTFT{25D99}\UTFT{224BC}\UTFT{224C1}\UTFT{224C9}\UTFT{224CC}\UTFT{235BB}\UTFT{2ADFF}%
+
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/sp_gb_utf.tex b/language/japanese/japanese-otf-uptex/test/uplatex/sp_gb_utf.tex
new file mode 100644
index 0000000000..f03fc4c969
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/sp_gb_utf.tex
@@ -0,0 +1,17 @@
+%
+% This file is generated from the data of UniGB-UTF32
+% in cid2code.txt (Version 12/05/2017)
+% for Adobe-GB1-5
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-GB1-5/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+Adobe-GB1-2\\
+\UTFC{20087}\UTFC{20089}\UTFC{200CC}\UTFC{215D7}\UTFC{2298F}\UTFC{20509}\UTFC{2099D}\UTFC{241FE}
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_text.tex b/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_text.tex
new file mode 100644
index 0000000000..e77167987b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_text.tex
@@ -0,0 +1,75 @@
+%
+% This file is generated from the data of UniJIS-UTF32
+% in cid2code.txt (Version 02/05/2019)
+% for Adobe-Japan1-7
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-Japan1-7/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+Adobe-Japan1-0\\
+𨳝櫛𥡴𨻶杓巽屠兔冕冤
+𡨚𤏐爨🄀
+
+Adobe-Japan1-4\\
+🄐🄑🄒🄓🄔🄕🄖🄗🄘🄙
+🄚🄛🄜🄝🄞🄟🄠🄡🄢🄣
+🄤🄥🄦🄧🄨🄩🅐🅑🅒🅓
+🅔🅕🅖🅗🅘🅙🅚🅛🅜🅝
+🅞🅟🅠🅡🅢🅣🅤🅥🅦🅧
+🅨🅩🄰🄱🄲🄳🄴🄵🄶🄷
+🄸🄹🄺🄻🄼🄽🄾🄿🅀🅁
+🅂🅃🅄🅅🅆🅇🅈🅉🈂🈷
+🅰🅱🅲🅳🅴🅵🅶🅷🅸🅹
+🅺🅻🅼🅽🅾🅿🆀🆁🆂🆃
+🆄🆅🆆🆇🆈🆉眞𠤎𦥑𫟘
+沿芽槪割𦈢𠮷𩵋卿𫞎憲
+𠩤浩𫝆𫝷滋𠮟勺爵周将
+𭕄𠀋城𩙿真𠆢𮕩𫝑成𧾷
+𣳾炭𥫗彫潮𡈽冬𤴔姬𫞉
+諭輸𥙿𦚰𠘨𠂊𠦄卉寃拔
+𦦙𣏌杞𪧦𫞽絣𮉸𠔿𦉪𠂰
+𮛪𨦇𨸗𫠚𤋮桒𣲾𠘑嶲你
+𣘺𣏾𢘉
+
+Adobe-Japan1-5\\
+𡌛𡑮𡢽𡚴𡸴𣇄𣗄𣜿𣝣𤟱
+𥒎𥔎𥝱𥧄𥶡𦫿𦹀𧃴𧚄𨉷
+𨏍𪆐𠂉𠂢𠂤𠈓𠌫𠎁𠍱𠏹
+𠑊𠔉𠗖𠝏𠠇𠠺𠢹𠥼𠦝𠫓
+𠬝𠵅𠷡𠺕𠹭𠹤𠽟𡈁𡉕𡉻
+𡉴𡋤𡋗𡋽𡌶𡍄𡏄𡑭𡗗𦰩
+𡙇𡜆𡝂𡧃𡱖𡴭𡵅𡵸𡵢𡶡
+𡶜𡶒𡶷𡷠𡸳𡼞𡽶𡿺𢅻𢌞
+𢎭𢛳𢡛𢢫𢦏𢪸𢭏𢭐𢭆𢰝
+𢮦𢰤𢷡𣇃𣇵𣆶𣍲𣏓𣏒𣏐
+𣏤𣏕𣏚𣏟𣑊𣑑𣑋𣑥𣓤𣕚
+𣖔𣘹𣙇𣘸𣜜𣜌𣝤𣟿𣟧𣠤
+𣠽𣪘𣱿𣴀𣵀𣷺𣷹𣷓𣽾𤂖
+𤄃𤇆𤇾𤎼𤘩𤚥𤢖𤩍𤭖𤭯
+𤰖𤸎𤸷𤹪𤺋𥁊𥁕𥄢𥆩𥇥
+𥇍𥈞𥉌𥐮𥓙𥖧𥞩𥞴𥧔𥫤
+𥫣𥫱𥮲𥱋𥱤𥸮𥹖𥹥𥹢𥻘
+𥻂𥻨𥼣𥽜𥿠𥿔𦀌𥿻𦀗𦁠
+𦃭𦉰𦊆𣴎𦐂𦙾𦜝𦣝𦣪𦥯
+𦧝𦨞𦩘𦪌𦪷𦱳𦳝𦹥𦾔𦿸
+𦿶𦿷𧄍𧄹𧏛𧏚𧏾𧐐𧑉𧘕
+𧘔𧘱𧚓𧜎𧜣𧝒𧦅𧪄𧮳𧮾
+𧯇𧲸𧶠𧸐𨂊𨂻𨊂𨋳𨐌𨑕
+𨕫𨗈𨗉𨛗𨛺𨥉𨥆𨥫𨦈𨦺
+𨦻𨨞𨨩𨩱𨩃𨪙𨫍𨫤𨫝𨯁
+𨯯𨴐𨵱𨷻𨸟𨸶𨺉𨻫𨼲𨿸
+𩊠𩊱𩒐𩗏𩛰𩜙𩝐𩣆𩩲𩷛
+𩸕𩺊𩹉𩻄𩻩𩻛𩿎𩿗𪀯𪀚
+𪃹𪂂𢈘𪎌𪐷𪗱𪘂𪚲𠃵𤸄
+𤿲𧵳再善形慈栟軔𪊲𠅘
+𠖱𠛬𫝓𠵘𫝚𫝜𥧌𫝶𢹂𫝼
+𠟈𢿫𧦴𫞂𫞋𣟱𫞔𤁋𫞬𫞯
+𫟉𫟏𫟒𦲞𧰼𫟰𫝥𫠍𫠗𦍌
+𩸽𪘚
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_utf.tex b/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_utf.tex
new file mode 100644
index 0000000000..b1d08c6c89
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/sp_jp_utf.tex
@@ -0,0 +1,75 @@
+%
+% This file is generated from the data of UniJIS-UTF32
+% in cid2code.txt (Version 02/05/2019)
+% for Adobe-Japan1-7
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-Japan1-7/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+Adobe-Japan1-0\\
+\UTF{28CDD}\UTF{2F8ED}\UTF{25874}\UTF{28EF6}\UTF{2F8DC}\UTF{2F884}\UTF{2F877}\UTF{2F80F}\UTF{2F8D3}\UTF{2F818}%
+\UTF{21A1A}\UTF{243D0}\UTF{2F920}\UTF{1F100}
+
+Adobe-Japan1-4\\
+\UTF{1F110}\UTF{1F111}\UTF{1F112}\UTF{1F113}\UTF{1F114}\UTF{1F115}\UTF{1F116}\UTF{1F117}\UTF{1F118}\UTF{1F119}%
+\UTF{1F11A}\UTF{1F11B}\UTF{1F11C}\UTF{1F11D}\UTF{1F11E}\UTF{1F11F}\UTF{1F120}\UTF{1F121}\UTF{1F122}\UTF{1F123}%
+\UTF{1F124}\UTF{1F125}\UTF{1F126}\UTF{1F127}\UTF{1F128}\UTF{1F129}\UTF{1F150}\UTF{1F151}\UTF{1F152}\UTF{1F153}%
+\UTF{1F154}\UTF{1F155}\UTF{1F156}\UTF{1F157}\UTF{1F158}\UTF{1F159}\UTF{1F15A}\UTF{1F15B}\UTF{1F15C}\UTF{1F15D}%
+\UTF{1F15E}\UTF{1F15F}\UTF{1F160}\UTF{1F161}\UTF{1F162}\UTF{1F163}\UTF{1F164}\UTF{1F165}\UTF{1F166}\UTF{1F167}%
+\UTF{1F168}\UTF{1F169}\UTF{1F130}\UTF{1F131}\UTF{1F132}\UTF{1F133}\UTF{1F134}\UTF{1F135}\UTF{1F136}\UTF{1F137}%
+\UTF{1F138}\UTF{1F139}\UTF{1F13A}\UTF{1F13B}\UTF{1F13C}\UTF{1F13D}\UTF{1F13E}\UTF{1F13F}\UTF{1F140}\UTF{1F141}%
+\UTF{1F142}\UTF{1F143}\UTF{1F144}\UTF{1F145}\UTF{1F146}\UTF{1F147}\UTF{1F148}\UTF{1F149}\UTF{1F202}\UTF{1F237}%
+\UTF{1F170}\UTF{1F171}\UTF{1F172}\UTF{1F173}\UTF{1F174}\UTF{1F175}\UTF{1F176}\UTF{1F177}\UTF{1F178}\UTF{1F179}%
+\UTF{1F17A}\UTF{1F17B}\UTF{1F17C}\UTF{1F17D}\UTF{1F17E}\UTF{1F17F}\UTF{1F180}\UTF{1F181}\UTF{1F182}\UTF{1F183}%
+\UTF{1F184}\UTF{1F185}\UTF{1F186}\UTF{1F187}\UTF{1F188}\UTF{1F189}\UTF{2F945}\UTF{2090E}\UTF{26951}\UTF{2B7D8}%
+\UTF{2F8FC}\UTF{2F995}\UTF{2F8EA}\UTF{2F822}\UTF{26222}\UTF{20BB7}\UTF{29D4B}\UTF{2F833}\UTF{2B78E}\UTF{2F8AC}%
+\UTF{20A64}\UTF{2F903}\UTF{2B746}\UTF{2B777}\UTF{2F90B}\UTF{20B9F}\UTF{2F828}\UTF{2F921}\UTF{2F83F}\UTF{2F873}%
+\UTF{2D544}\UTF{2000B}\UTF{2F852}\UTF{2967F}\UTF{2F947}\UTF{201A2}\UTF{2E569}\UTF{2B751}\UTF{2F8B2}\UTF{27FB7}%
+\UTF{23CFE}\UTF{2F91A}\UTF{25AD7}\UTF{2F89A}\UTF{2F90F}\UTF{2123D}\UTF{2F81A}\UTF{24D14}\UTF{2F862}\UTF{2B789}%
+\UTF{2F9D0}\UTF{2F9DF}\UTF{2567F}\UTF{266B0}\UTF{20628}\UTF{2008A}\UTF{20984}\UTF{2F82C}\UTF{2F86D}\UTF{2F8B6}%
+\UTF{26999}\UTF{233CC}\UTF{2F8DB}\UTF{2A9E6}\UTF{2B7BD}\UTF{2F96C}\UTF{2E278}\UTF{2053F}\UTF{2626A}\UTF{200B0}%
+\UTF{2E6EA}\UTF{28987}\UTF{28E17}\UTF{2B81A}\UTF{242EE}\UTF{2F8E1}\UTF{23CBE}\UTF{20611}\UTF{2F9F4}\UTF{2F804}%
+\UTF{2363A}\UTF{233FE}\UTF{22609}
+
+Adobe-Japan1-5\\
+\UTF{2131B}\UTF{2146E}\UTF{218BD}\UTF{216B4}\UTF{21E34}\UTF{231C4}\UTF{235C4}\UTF{2373F}\UTF{23763}\UTF{247F1}%
+\UTF{2548E}\UTF{2550E}\UTF{25771}\UTF{259C4}\UTF{25DA1}\UTF{26AFF}\UTF{26E40}\UTF{270F4}\UTF{27684}\UTF{28277}%
+\UTF{283CD}\UTF{2A190}\UTF{20089}\UTF{200A2}\UTF{200A4}\UTF{20213}\UTF{2032B}\UTF{20381}\UTF{20371}\UTF{203F9}%
+\UTF{2044A}\UTF{20509}\UTF{205D6}\UTF{2074F}\UTF{20807}\UTF{2083A}\UTF{208B9}\UTF{2097C}\UTF{2099D}\UTF{20AD3}%
+\UTF{20B1D}\UTF{20D45}\UTF{20DE1}\UTF{20E95}\UTF{20E6D}\UTF{20E64}\UTF{20F5F}\UTF{21201}\UTF{21255}\UTF{2127B}%
+\UTF{21274}\UTF{212E4}\UTF{212D7}\UTF{212FD}\UTF{21336}\UTF{21344}\UTF{213C4}\UTF{2146D}\UTF{215D7}\UTF{26C29}%
+\UTF{21647}\UTF{21706}\UTF{21742}\UTF{219C3}\UTF{21C56}\UTF{21D2D}\UTF{21D45}\UTF{21D78}\UTF{21D62}\UTF{21DA1}%
+\UTF{21D9C}\UTF{21D92}\UTF{21DB7}\UTF{21DE0}\UTF{21E33}\UTF{21F1E}\UTF{21F76}\UTF{21FFA}\UTF{2217B}\UTF{2231E}%
+\UTF{223AD}\UTF{226F3}\UTF{2285B}\UTF{228AB}\UTF{2298F}\UTF{22AB8}\UTF{22B4F}\UTF{22B50}\UTF{22B46}\UTF{22C1D}%
+\UTF{22BA6}\UTF{22C24}\UTF{22DE1}\UTF{231C3}\UTF{231F5}\UTF{231B6}\UTF{23372}\UTF{233D3}\UTF{233D2}\UTF{233D0}%
+\UTF{233E4}\UTF{233D5}\UTF{233DA}\UTF{233DF}\UTF{2344A}\UTF{23451}\UTF{2344B}\UTF{23465}\UTF{234E4}\UTF{2355A}%
+\UTF{23594}\UTF{23639}\UTF{23647}\UTF{23638}\UTF{2371C}\UTF{2370C}\UTF{23764}\UTF{237FF}\UTF{237E7}\UTF{23824}%
+\UTF{2383D}\UTF{23A98}\UTF{23C7F}\UTF{23D00}\UTF{23D40}\UTF{23DFA}\UTF{23DF9}\UTF{23DD3}\UTF{23F7E}\UTF{24096}%
+\UTF{24103}\UTF{241C6}\UTF{241FE}\UTF{243BC}\UTF{24629}\UTF{246A5}\UTF{24896}\UTF{24A4D}\UTF{24B56}\UTF{24B6F}%
+\UTF{24C16}\UTF{24E0E}\UTF{24E37}\UTF{24E6A}\UTF{24E8B}\UTF{2504A}\UTF{25055}\UTF{25122}\UTF{251A9}\UTF{251E5}%
+\UTF{251CD}\UTF{2521E}\UTF{2524C}\UTF{2542E}\UTF{254D9}\UTF{255A7}\UTF{257A9}\UTF{257B4}\UTF{259D4}\UTF{25AE4}%
+\UTF{25AE3}\UTF{25AF1}\UTF{25BB2}\UTF{25C4B}\UTF{25C64}\UTF{25E2E}\UTF{25E56}\UTF{25E65}\UTF{25E62}\UTF{25ED8}%
+\UTF{25EC2}\UTF{25EE8}\UTF{25F23}\UTF{25F5C}\UTF{25FE0}\UTF{25FD4}\UTF{2600C}\UTF{25FFB}\UTF{26017}\UTF{26060}%
+\UTF{260ED}\UTF{26270}\UTF{26286}\UTF{23D0E}\UTF{26402}\UTF{2667E}\UTF{2671D}\UTF{268DD}\UTF{268EA}\UTF{2696F}%
+\UTF{269DD}\UTF{26A1E}\UTF{26A58}\UTF{26A8C}\UTF{26AB7}\UTF{26C73}\UTF{26CDD}\UTF{26E65}\UTF{26F94}\UTF{26FF8}%
+\UTF{26FF6}\UTF{26FF7}\UTF{2710D}\UTF{27139}\UTF{273DB}\UTF{273DA}\UTF{273FE}\UTF{27410}\UTF{27449}\UTF{27615}%
+\UTF{27614}\UTF{27631}\UTF{27693}\UTF{2770E}\UTF{27723}\UTF{27752}\UTF{27985}\UTF{27A84}\UTF{27BB3}\UTF{27BBE}%
+\UTF{27BC7}\UTF{27CB8}\UTF{27DA0}\UTF{27E10}\UTF{2808A}\UTF{280BB}\UTF{28282}\UTF{282F3}\UTF{2840C}\UTF{28455}%
+\UTF{2856B}\UTF{285C8}\UTF{285C9}\UTF{286D7}\UTF{286FA}\UTF{28949}\UTF{28946}\UTF{2896B}\UTF{28988}\UTF{289BA}%
+\UTF{289BB}\UTF{28A1E}\UTF{28A29}\UTF{28A71}\UTF{28A43}\UTF{28A99}\UTF{28ACD}\UTF{28AE4}\UTF{28ADD}\UTF{28BC1}%
+\UTF{28BEF}\UTF{28D10}\UTF{28D71}\UTF{28DFB}\UTF{28E1F}\UTF{28E36}\UTF{28E89}\UTF{28EEB}\UTF{28F32}\UTF{28FF8}%
+\UTF{292A0}\UTF{292B1}\UTF{29490}\UTF{295CF}\UTF{296F0}\UTF{29719}\UTF{29750}\UTF{298C6}\UTF{29A72}\UTF{29DDB}%
+\UTF{29E15}\UTF{29E8A}\UTF{29E49}\UTF{29EC4}\UTF{29EE9}\UTF{29EDB}\UTF{29FCE}\UTF{29FD7}\UTF{2A02F}\UTF{2A01A}%
+\UTF{2A0F9}\UTF{2A082}\UTF{22218}\UTF{2A38C}\UTF{2A437}\UTF{2A5F1}\UTF{2A602}\UTF{2A6B2}\UTF{200F5}\UTF{24E04}%
+\UTF{24FF2}\UTF{27D73}\UTF{2F815}\UTF{2F846}\UTF{2F899}\UTF{2F8A6}\UTF{2F8E5}\UTF{2F9DE}\UTF{2A2B2}\UTF{20158}%
+\UTF{205B1}\UTF{206EC}\UTF{2B753}\UTF{20D58}\UTF{2B75A}\UTF{2B75C}\UTF{259CC}\UTF{2B776}\UTF{22E42}\UTF{2B77C}%
+\UTF{207C8}\UTF{22FEB}\UTF{279B4}\UTF{2B782}\UTF{2B78B}\UTF{237F1}\UTF{2B794}\UTF{2404B}\UTF{2B7AC}\UTF{2B7AF}%
+\UTF{2B7C9}\UTF{2B7CF}\UTF{2B7D2}\UTF{26C9E}\UTF{27C3C}\UTF{2B7F0}\UTF{2B765}\UTF{2B80D}\UTF{2B817}\UTF{2634C}%
+\UTF{29E3D}\UTF{2A61A}
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/sp_kr_utf.tex b/language/japanese/japanese-otf-uptex/test/uplatex/sp_kr_utf.tex
new file mode 100644
index 0000000000..6af3e290ff
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/sp_kr_utf.tex
@@ -0,0 +1,14 @@
+%
+% This file is generated from the data of UniKS-UTF32
+% in cid2code.txt (Version 01/31/2012)
+% for Adobe-Korea1-2
+%
+% Reference:
+% https://github.com/adobe-type-tools/cmap-resources/
+% Adobe-Korea1-2/cid2code.txt
+%
+% A newer CMap may be required for some code points.
+%
+
+
+% end
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/uotf-sp-utf8.tex b/language/japanese/japanese-otf-uptex/test/uplatex/uotf-sp-utf8.tex
new file mode 100644
index 0000000000..89b4ef4784
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/uotf-sp-utf8.tex
@@ -0,0 +1,313 @@
+% -*- coding: utf-8 -*-
+%%%%%%%%
+% To control hyperref on command line,
+% you can select one of (1),(2a),(2b),(3).
+% (1) do not treat hyperref
+% $ uplatex uotf-sp-utf8.tex
+% (2a) hyperref + dvipdfmx (with CMap conversion)
+% $ uplatex "\def\withhyperref{dvipdfmx}\input" uotf-sp-utf8.tex
+% (2b) hyperref + dvipdfmx + out2uni (without CMap conversion)
+% $ uplatex "\def\withhyperref{dvipdfmx}\nocmap{true}\input" uotf-sp-utf8.tex
+% (3) hyperref + dvips + convbkmk.rb + distiller/ps2pdf
+% $ uplatex "\def\withhyperref{dvips}\input" uotf-sp-utf8.tex
+%%%%%%
+
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000
+ \uptexmodetrue
+ \def\tounicode{pdf:tounicode UTF8-UTF16}
+\else
+ \ifnum\jis"2121="A1A1
+ \def\tounicode{pdf:tounicode EUC-UCS2}
+ \fi
+ \ifnum\jis"2121="8140
+ \def\tounicode{pdf:tounicode 90ms-RKSJ-UCS2}
+ \fi
+\fi
+
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+\def\@tarticle{tarticle}
+\def\@ujarticle{ujarticle}
+\def\@noreplace{noreplace}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@noreplace
+ \ifuptexmode
+ \ifx\class\@ujarticle
+ \def\@enc@{JY2}\def\@dir@{h}
+ \else
+ \def\@enc@{JT2}\def\@dir@{v}
+ \fi
+ \DeclareFontFamily{\@enc@}{mcw}{}
+ \DeclareFontFamily{\@enc@}{gtw}{}
+ \DeclareFontShape{\@enc@}{mcw}{m}{n}{<->s*[0.962216]upjpnrm-\@dir@}{}
+ \DeclareFontShape{\@enc@}{gtw}{m}{n}{<->s*[0.962216]upjpngt-\@dir@}{}
+ \DeclareFontShape{\@enc@}{gt}{m}{n}{<->s*[0.962216]upjpngt-\@dir@}{}
+ \DeclareFontShape{\@enc@}{mcw}{bx}{n}{<->ssub*gt/m/n}{}
+ \DeclareFontShape{\@enc@}{gtw}{bx}{n}{<->ssub*gt/m/n}{}
+ \DeclareFontShape{\@enc@}{gt}{bx}{n}{<->ssub*gt/m/n}{}
+ \DeclareRobustCommand\mcw{\kanjifamily{mcw}\selectfont}
+ \DeclareRobustCommand\gtw{\kanjifamily{gtw}\selectfont}
+ \renewcommand\mcdefault{mcw}
+ \renewcommand\gtdefault{gtw}
+ \fi
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+\ifx\class\@jarticle
+ \documentclass[a4paper,titlepage]{\class}
+\else
+ \ifx\class\@ujarticle
+ \documentclass[a4paper,titlepage]{\class}
+ \else
+ \documentclass[a4paper,titlepage,landscape]{\class}
+ \fi
+\fi
+
+\usepackage[\@opt@]{otf}
+
+\def\@dvipdfmx{dvipdfmx}
+\def\@dvips{dvips}
+
+\ifx\withhyperref\@undefined
+ \def\withhyperref{undefined}
+ \edef\texorpdfstring#1#2{#1}
+\else
+ \ifx\withhyperref\@dvipdfmx
+ \def\@hyperrefkeyval{dvipdfm}
+ \usepackage{atbegshi}
+ \ifx\nocmap\@undefined
+ \AtBeginShipoutFirst{\special{\tounicode}}
+ \fi
+ \fi
+ \ifx\withhyperref\@dvips
+ \def\@hyperrefkeyval{dvips}
+ \fi
+
+\usepackage[\@hyperrefkeyval,%
+bookmarks=true,%
+bookmarksnumbered=true,%
+bookmarkstype=toc,%
+%pdfstartview={FitBH -32768},%
+pdftitle={japanese-otfのテスト},%
+pdfsubject={Unicode supplementary plane編},%
+pdfauthor={upTeXプロジェクト},%
+pdfkeywords={TeX; dvips; dvipdfmx; bookmark; hyperref; しおり; pdf}%
+]{hyperref}
+
+\fi
+
+\makeatother
+
+\usepackage{redeffont}
+
+\ajUTFVarDef{叱}{20B9F}
+\ajUTFVarDef{亭}{20158}
+\ajUTFVarDef{吉}{20bb7}
+\ajUTFVarDef{座}{2B776}
+
+\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
+\pagestyle{empty}
+\makeatletter
+\ifx\rubyfamily\@undefined\let\rubyfamily=\relax\fi
+\ifx\mgfamily\@undefined\let\mgfamily=\relax\fi
+\makeatother
+
+\edef\bs{$\backslash$\kern0em}
+\setlength\parindent{0em}
+
+\begin{document}
+\section{見出し}
+
+コンパイラー:\ifuptexmode upLaTeX\else pLaTeX\fi\\
+クラス:\texttt{\class}\\
+オプション:\texttt{\option}
+
+\vspace{\baselineskip}
+\ifuptexmode
+\begin{tabular}{l||ccccccc}
+フォント & 仮名 & 漢字 & UTF-8 & \bs kchar & \bs UTF & \bs CID\\
+\hline
+mc/m & ひらかな & 漢字 & 𠮟𠅘 & \kchar"20B9F\kchar"20158 & \UTF{20B9F}\UTF{20158} & \CID{13803}\CID{20075} \\
+mc/bx & {\bfseries ひらかな} & {\bfseries 漢字} & {\bfseries 𠮟𠅘} & {\bfseries\kchar"20B9F\kchar"20158} & {\bfseries\UTF{20B9F}\UTF{20158}} & {\bfseries\CID{13803}\CID{20075}} \\
+gt/m & {\gtfamily ひらかな} & {\gtfamily 漢字} & {\gtfamily 𠮟𠅘} & {\gtfamily\kchar"20B9F\kchar"20158} & {\gtfamily\UTF{20B9F}\UTF{20158}} & {\gtfamily\CID{13803}\CID{20075}} \\
+gt/bx & {\gtfamily\bfseries ひらかな} & {\gtfamily\bfseries 漢字} & {\gtfamily\bfseries 𠮟𠅘} & {\gtfamily\bfseries\kchar"20B9F\kchar"20158} & {\gtfamily\bfseries\UTF{20B9F}\UTF{20158}} & {\gtfamily\bfseries\CID{13803}\CID{20075}} \\
+mg/m & {\mgfamily ひらかな} & {\mgfamily 漢字} & {\mgfamily 𠮟𠅘} & {\mgfamily\kchar"20B9F\kchar"20158} & {\mgfamily\UTF{20B9F}\UTF{20158}} & {\mgfamily\CID{13803}\CID{20075}} \\
+\end{tabular}
+\else
+\begin{tabular}{l||ccccc}
+フォント & 仮名 & 漢字 & \bs UTF & \bs CID\\
+\hline
+mc/m & ひらかな & 漢字 & \UTF{20B9F}\UTF{20158} & \CID{13803}\CID{20075} \\
+mc/bx & {\bfseries ひらかな} & {\bfseries 漢字} & {\bfseries\UTF{20B9F}\UTF{20158}} & {\bfseries\CID{13803}\CID{20075}} \\
+gt/m & {\gtfamily ひらかな} & {\gtfamily 漢字} & {\gtfamily\UTF{20B9F}\UTF{20158}} & {\gtfamily\CID{13803}\CID{20075}} \\
+gt/bx & {\gtfamily\bfseries ひらかな} & {\gtfamily\bfseries 漢字} & {\gtfamily\bfseries\UTF{20B9F}\UTF{20158}} & {\gtfamily\bfseries\CID{13803}\CID{20075}} \\
+mg/m & {\mgfamily ひらかな} & {\mgfamily 漢字} & {\mgfamily\UTF{20B9F}\UTF{20158}} & {\mgfamily\CID{13803}\CID{20075}} \\
+\end{tabular}
+\fi
+\vspace{\baselineskip}
+
+日本:\UTF{20509}\UTF{241FE} 簡体字:\UTFC{20509}\UTFC{241FE} 多言語:\UTFM{20509}\UTFM{241FE}
+
+日本:\UTF{20b9f}\UTF{26402} 繁體字:\UTFT{20b9f}\UTFT{26402} 多言語:\UTFM{20b9f}\UTFM{26402}
+
+簡体字:\UTFC{20087}\UTFC{200cc} 繁體字:\UTFT{20087}\UTFT{200cc} 多言語:\UTFM{20087}\UTFM{200cc}
+
+\vspace{\baselineskip}
+
+\ifuptexmode
+ \kchar"20B9Fる。
+ 𠮟る。
+\fi
+\ajVar{叱}る。
+叱る。
+
+\ifuptexmode
+ らいおん\kchar"20158。
+ らいおん𠅘。
+\fi
+らいおん\ajVar{亭}。
+らいおん亭。
+
+\ifuptexmode
+ \kchar"20BB7野家。
+ 𠮷野家。
+\fi
+\ajVar{吉}野家。
+吉野家。
+
+\ifuptexmode
+ 銀\kchar"2B776アスター。
+ 銀𫝶アスター。
+\fi
+銀\ajVar{座}アスター。
+銀座アスター。
+
+\makeatletter
+\ifx\withhyperref\@undefined
+\else
+
+\section{見出しに\texorpdfstring{\bs}{\134}UTF, \texorpdfstring{\bs}{\134}UTFC, \texorpdfstring{\bs}{\134}UTFMなど}
+\subsection{日本:\UTF{9aa8}\UTF{6D77} 簡体字:\UTFC{9aa8}\UTFC{6D77} 繁體字:\UTFT{9AA8}\UTFT{6d77} 朝鮮:\UTFK{9AA8}\UTFK{6d77}}
+日本:\UTF{9aa8}\UTF{6D77} 簡体字:\UTFC{9aa8}\UTFC{6D77} 繁體字:\UTFT{9AA8}\UTFT{6d77} 朝鮮:\UTFK{9AA8}\UTFK{6d77}
+
+\subsection{ハングル:\UTFK{c548}\UTFK{b155}\UTFK{d558}\UTFK{C138}\UTFK{C694}}
+ハングル:\UTFK{c548}\UTFK{b155}\UTFK{d558}\UTFK{C138}\UTFK{C694}
+
+\subsection{日本:\UTF{20509}\UTF{241FE} 簡体字:\UTFC{20509}\UTFC{241FE} 多言語:\UTFM{20509}\UTFM{241FE}}
+日本:\UTF{20509}\UTF{241FE} 簡体字:\UTFC{20509}\UTFC{241FE} 多言語:\UTFM{20509}\UTFM{241FE}
+
+\subsection{日本:\UTF{20509}\UTF{241FE} 簡体字:\UTFC{20509}\UTFC{241FE} 多言語:\UTFM{20509}\UTFM{241FE}}
+日本:\UTF{20509}\UTF{241FE} 簡体字:\UTFC{20509}\UTFC{241FE} 多言語:\UTFM{20509}\UTFM{241FE}
+
+\subsection{日本:\UTF{20b9f}\UTF{26402} 繁體字:\UTFT{20b9f}\UTFT{26402} 多言語:\UTFM{20b9f}\UTFM{26402}}
+日本:\UTF{20b9f}\UTF{26402} 繁體字:\UTFT{20b9f}\UTFT{26402} 多言語:\UTFM{20b9f}\UTFM{26402}
+
+\subsection{簡体字:\UTFC{20087}\UTFC{200cc} 繁體字:\UTFT{20087}\UTFT{200cc} 多言語:\UTFM{20087}\UTFM{200cc}}
+簡体字:\UTFC{20087}\UTFC{200cc} 繁體字:\UTFT{20087}\UTFT{200cc} 多言語:\UTFM{20087}\UTFM{200cc}
+\fi
+\makeatother
+
+\clearpage
+[mc/m]
+
+\ifuptexmode
+ \input{sp_jp_text}
+\fi
+\input{sp_jp_utf}
+
+{\bfseries%
+[mc/bx]
+
+\ifuptexmode
+ \input{sp_jp_text}
+\fi
+\input{sp_jp_utf}
+
+}
+
+{\gtfamily
+[gt/m]
+
+\ifuptexmode
+ \input{sp_jp_text}
+\fi
+\input{sp_jp_utf}
+
+{\bfseries%
+[gt/bx]
+
+\ifuptexmode
+ \input{sp_jp_text}
+\fi
+\input{sp_jp_utf}
+
+}}
+
+{\mgfamily
+[mg/m]
+
+\ifuptexmode
+ \input{sp_jp_text}
+\fi
+\input{sp_jp_utf}
+
+}
+
+\clearpage
+[mc/m]
+
+\input{sp_cns_utf}
+
+\input{sp_gb_utf}
+
+%\end{document}
+
+{\bfseries%
+[mc/bx]
+
+\input{sp_cns_utf}
+
+\input{sp_gb_utf}
+
+}
+
+\end{document}
+
+
+{\gtfamily
+[gt/m]
+
+\input{sp_cns_utf}
+
+\input{sp_gb_utf}
+
+{\bfseries%
+[gt/bx]
+
+\input{sp_cns_utf}
+
+\input{sp_gb_utf}
+
+}}
+
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex
new file mode 100644
index 0000000000..b7c8a5f5f5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex
@@ -0,0 +1,291 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+\def\@tarticle{tarticle}
+\def\@utarticle{utarticle}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\def\baseshift{-.12zh}
+\ifx\class\@tarticle\def\baseshift{-.5zh}\fi
+\ifx\class\@utarticle\def\baseshift{-.5zh}\fi
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+\documentclass[a4paper,titlepage, draft]{\class}
+%\documentclass[a4paper,titlepage, draft,landscape]{\class}
+
+\usepackage[\@opt@]{otf}
+
+%
+% furikana.sty があれば読み込む
+\newread\@istheresuchafile
+\openin\@istheresuchafile furikana.sty
+\ifeof\@istheresuchafile\relax
+\else\closein\@istheresuchafile\relax
+\usepackage{furikana}% found
+\fi
+
+\makeatother
+
+\usepackage{redeffont}
+
+
+\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
+\ajCIDVarDef{り}{12746}
+\ajCIDVarDef{高}{8705}
+\ajUTFVarDef{鴎}{9DD7}
+\pagestyle{empty}
+\makeatletter
+\ifx\rubyfamily\@undefined\let\rubyfamily=\relax\fi
+\ifx\mgfamily\@undefined\let\mgfamily=\relax\fi
+\makeatother
+\begin{document}
+\section{見出し}
+
+クラス:\texttt{\class}\\
+オプション:\texttt{\option}
+
+\vspace{\baselineskip}
+\begin{tabular}{l||ccccc}
+フォント & 仮名 & 漢字 & UTF & CID & ルビ\\
+\hline
+mc/m & ひらかな & 漢字 & \UTF{9DD7} & \CID{8705} & {\rubyfamily 振りかな}\\
+mc/bx & {\bfseries ひらかな} & {\bfseries 漢字} & {\bfseries\UTF{9DD7}} & {\bfseries\CID{8705}} & {\bfseries\rubyfamily 振りかな}\\
+gt/m & {\gtfamily ひらかな} & {\gtfamily 漢字} & {\gtfamily\UTF{9DD7}} & {\gtfamily\CID{8705}} & {\gtfamily\rubyfamily 振りかな}\\
+gt/bx & {\gtfamily\bfseries ひらかな} & {\gtfamily\bfseries 漢字} & {\gtfamily\bfseries\UTF{9DD7}} & {\gtfamily\bfseries\CID{8705}} & {\gtfamily\bfseries\rubyfamily 振りかな}\\
+mg/m & {\mgfamily ひらかな} & {\mgfamily 漢字} & {\mgfamily\UTF{9DD7}} & {\mgfamily\CID{8705}} & {\mgfamily\rubyfamily 振りかな}\\
+\end{tabular}
+\vspace{\baselineskip}
+
+日本:\UTF{9aa8} 簡体字:\UTFC{9aa8} 繁體字:\UTFT{9aa8} 朝鮮:\UTFK{9aa8}
+
+日本:\UTF{6d77} 簡体字:\UTFC{6d77} 繁體字:\UTFT{6d77} 朝鮮:\UTFK{6d77}
+
+% with furikana.sty
+\makeatletter
+\ifx\kana\@undefined
+\else
+\kana{漢字}{振りかな}{\bfseries \kana{漢字}{振りかな}}%
+{\gtfamily\kana{漢字}{振りかな}\bfseries \kana{漢字}{振りかな}}
+{\mgfamily\kana{漢字}{振りかな}}
+
+\kana{\UTF{9DD7}}{かな}\kana{鴎}{かな}
+
+\Kana[3]{\UTFK{c548},\UTFK{b155},\UTFK{d558},\UTFK{c138},\UTFK{c694}}{アン,ニョン,ハ,セ,ヨ}
+\fi
+\makeatother
+
+\vspace{\baselineskip}
+
+アイウエオ\raisebox\baseshift{\frame{ア}\frame{イ}\frame{ウ}\frame{エ}\frame{オ}}
+
+アイウエオ\raisebox\baseshift{\frame{ア}\frame{イ}\frame{ウ}\frame{エ}\frame{オ}}
+
+
+\clearpage
+[mc/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+{\bfseries%
+[mc/bx]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}
+
+{\gtfamily
+[gt/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+{\bfseries%
+[gt/bx]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}}
+
+{\mgfamily
+[mg/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}
+
+{\rubyfamily%
+[ruby/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+
+\fbox{\hbox{\tate\Huge ㇰ}}
+
+\fbox{\hbox{\yoko\Huge ㇰ}}
+
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+{\bfseries%
+[ruby/bx]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}}
+
+{\gtfamily\rubyfamily%
+[rubyg/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+{\gtfamily\rubyfamily\bfseries%
+[rubyg/bx]
+
+\fbox{\hbox{\tate\Huge ぁ}}
+
+\fbox{\hbox{\yoko\Huge ぁ}}
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}}
+
+{\mgfamily\rubyfamily%
+[rubymg/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+}
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/uotftest.tex b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest.tex
new file mode 100644
index 0000000000..afe549dd0e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest.tex
@@ -0,0 +1,191 @@
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+\def\@tarticle{tarticle}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \def\class{jarticle}
+\fi
+\ifx\class\@jarticle
+\else
+ \ifx\class\@tarticle
+ \else
+ \edef\@opt@{uplatex,\@opt@}
+ \fi
+\fi
+
+\documentclass[a4paper,titlepage, draft]{\class}
+%\documentclass[a4paper,titlepage, draft,landscape]{\class}
+
+\usepackage[\@opt@]{otf}
+
+%
+% furikana.sty $B$,$"$l$PFI$_9~$`(B
+\newread\@istheresuchafile
+\openin\@istheresuchafile furikana.sty
+\ifeof\@istheresuchafile\relax
+\else\closein\@istheresuchafile\relax
+\usepackage{furikana}% found
+\fi
+
+\makeatother
+
+\usepackage{redeffont}
+
+
+\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
+\ajCIDVarDef{$B$j(B}{12746}
+\ajCIDVarDef{$B9b(B}{8705}
+\ajUTFVarDef{$B2*(B}{9DD7}
+\pagestyle{empty}
+\makeatletter
+\ifx\rubyfamily\@undefined\let\rubyfamily=\relax\fi
+\ifx\mgfamily\@undefined\let\mgfamily=\relax\fi
+\makeatother
+\begin{document}
+\section{$B8+=P$7(B}
+
+$B%/%i%9!'(B\texttt{\class}\\
+$B%*%W%7%g%s!'(B\texttt{\option}
+
+\vspace{\baselineskip}
+\begin{tabular}{l||ccccc}
+$B%U%)%s%H(B & $B2>L>(B & $B4A;z(B & UTF & CID & $B%k%S(B\\
+\hline
+mc/m & $B$R$i$+$J(B & $B4A;z(B & \UTF{9DD7} & \CID{8705} & {\rubyfamily $B?6$j$+$J(B}\\
+mc/bx & {\bfseries $B$R$i$+$J(B} & {\bfseries $B4A;z(B} & {\bfseries\UTF{9DD7}} & {\bfseries\CID{8705}} & {\bfseries\rubyfamily $B?6$j$+$J(B}\\
+gt/m & {\gtfamily $B$R$i$+$J(B} & {\gtfamily $B4A;z(B} & {\gtfamily\UTF{9DD7}} & {\gtfamily\CID{8705}} & {\gtfamily\rubyfamily $B?6$j$+$J(B}\\
+gt/bx & {\gtfamily\bfseries $B$R$i$+$J(B} & {\gtfamily\bfseries $B4A;z(B} & {\gtfamily\bfseries\UTF{9DD7}} & {\gtfamily\bfseries\CID{8705}} & {\gtfamily\bfseries\rubyfamily $B?6$j$+$J(B}\\
+mg/m & {\mgfamily $B$R$i$+$J(B} & {\mgfamily $B4A;z(B} & {\mgfamily\UTF{9DD7}} & {\mgfamily\CID{8705}} & {\mgfamily\rubyfamily $B?6$j$+$J(B}\\
+\end{tabular}
+\vspace{\baselineskip}
+
+$BF|K\!'(B\UTF{9aa8}$B!!4JBN;z!'(B\UTFC{9aa8}$B!!HKqs;z!'(B\UTFT{9aa8}$B!!D+A/!'(B\UTFK{9aa8}
+
+$BF|K\!'(B\UTF{6d77}$B!!4JBN;z!'(B\UTFC{6d77}$B!!HKqs;z!'(B\UTFT{6d77}$B!!D+A/!'(B\UTFK{6d77}
+
+% with furikana.sty
+\makeatletter
+\ifx\kana\@undefined
+\else
+\kana{$B4A;z(B}{$B?6$j$+$J(B}{\bfseries \kana{$B4A;z(B}{$B?6$j$+$J(B}}%
+{\gtfamily\kana{$B4A;z(B}{$B?6$j$+$J(B}\bfseries \kana{$B4A;z(B}{$B?6$j$+$J(B}}
+{\mgfamily\kana{$B4A;z(B}{$B?6$j$+$J(B}}
+
+\kana{\UTF{9DD7}}{$B$+$J(B}\kana{$B2*(B}{$B$+$J(B}
+
+\Kana[3]{\UTFK{c548},\UTFK{b155},\UTFK{d558},\UTFK{c138},\UTFK{c694}}{$B%"%s(B,$B%K%g%s(B,$B%O(B,$B%;(B,$B%h(B}
+\fi
+\makeatother
+
+
+\clearpage
+[mc/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+
+{\bfseries%
+[mc/bx]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}
+
+{\gtfamily
+[gt/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+
+{\bfseries%
+[gt/bx]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}}
+
+{\mgfamily
+[mg/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}
+
+{\rubyfamily%
+[ruby/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+
+{\bfseries%
+[ruby/bx]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}}
+
+{\gtfamily\rubyfamily%
+[rubyg/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+
+{\gtfamily\rubyfamily\bfseries%
+[rubyg/bx]
+
+\fbox{\hbox{\tate\Huge $B$!(B}}
+
+\fbox{\hbox{\yoko\Huge $B$!(B}}
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}}
+
+{\mgfamily\rubyfamily%
+[rubymg/m]
+
+$B$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B
+$B$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!3!4!5!6!<(B
+
+$B%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B
+$B%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v(B
+}
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/upbrsgtest.tex b/language/japanese/japanese-otf-uptex/test/uplatex/upbrsgtest.tex
new file mode 100644
index 0000000000..e901822def
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/upbrsgtest.tex
@@ -0,0 +1,293 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{deluxe}
+\def\@default{default}
+\def\@br@{br}
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\burasage\@br@
+ \edef\@opt@{\@opt@,burasage}
+ \def\burasage{yes}
+\else
+ \def\burasage{no}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{utbook}
+ \else
+ \def\class{tbook}
+ \fi
+\fi
+
+\documentclass[twocolumn]{\class}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+
+\textwidth 13zw
+\columnsep 3zw
+\columnseprule 1pt
+\linewidth 5zw
+\parindent 0zw
+\pagestyle{empty}
+%\parskip \baselineskip
+\begin{document}
+class: \texttt{\class}\\
+option: \texttt{\option}\\
+burasage: \texttt{\burasage}
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+
+\newpage
+
+\textgt{タイプ別の、組み合わせ。}
+
+□ああ□
+
+□あ(□
+
+□あ)□
+
+□あ・□
+
+□あ。□
+
+□あ―□
+
+□あ?□
+
+□あ、□
+
+□(あ□
+
+□((□
+
+□()□
+
+□(・□
+
+□(。□
+
+□(―□
+
+□(?□
+
+□(、□
+
+□)あ□
+
+□)(□
+
+□))□
+
+□)・□
+
+□)。□
+
+□)―□
+
+□)?□
+
+□)、□
+
+□・あ□
+
+□・(□
+
+□・)□
+
+□・・□
+
+□・。□
+
+□・―□
+
+□・?□
+
+□・、□
+
+□。あ□
+
+□。(□
+
+□。)□
+
+□。・□
+
+□。。□
+
+□。―□
+
+□。?□
+
+□。、□
+
+□―あ□
+
+□―(□
+
+□―)□
+
+□―・□
+
+□―。□
+
+□――□
+
+□―?□
+
+□―、□
+
+□?あ□
+
+□?(□
+
+□?)□
+
+□?・□
+
+□?。□
+
+□?―□
+
+□??□
+
+□?、□
+
+□、あ□
+
+□、(□
+
+□、)□
+
+□、・□
+
+□、。□
+
+□、―□
+
+□、?□
+
+□、、□
+
+\newpage
+{\bfseries%
+[mc/bx]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+}
+
+\if0
+{\ltseries%
+[mc/l]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+}
+\fi
+
+{\gtfamily
+[gt/m]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+
+{\bfseries%
+[gt/bx]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+}
+
+\if0
+{\ebseries%
+[gt/eb]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+}
+\fi
+}
+
+{\mgfamily
+[mg/m]
+
+□□□□◆□□□□◆□□□□◆□□□□◆,
+□□□□◆□□□□◆□□□□◆□□□□◆.
+
+□□,□□,□□□□◆,□□,□□.
+
+□□,□□,□□□□◆,□□□□.
+
+□□□□◆,□□.□□□□□□◆.
+
+□□□□◆。」「□□◆
+}
+
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/upjis2004.tex b/language/japanese/japanese-otf-uptex/test/uplatex/upjis2004.tex
new file mode 100644
index 0000000000..65a235f946
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/upjis2004.tex
@@ -0,0 +1,158 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{deluxe}
+\def\@default{default}
+\def\@br@{br}
+\def\@newjis@{04}
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\burasage\@br@
+ \edef\@opt@{\@opt@,burasage}
+ \def\burasage{yes}
+\else
+ \def\burasage{no}
+\fi
+
+\ifx\jisvar\@newjis@
+ \edef\@opt@{\@opt@,jis2004}
+ \def\jisvar{2004}
+\else
+ \def\jisvar{conventional}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\documentclass[a4paper,titlepage,draft]{\class}
+%\documentclass[a4paper,titlepage,draft,landscape]{\class}
+
+\usepackage[\@opt@]{otf}
+
+\makeatother
+
+\usepackage{redeffont}
+\parindent 0zw
+\pagestyle{empty}
+%\parskip \baselineskip
+\makeatletter
+\ifx\rubyfamily\@undefined\let\rubyfamily=\relax\fi
+\ifx\mgfamily\@undefined\let\mgfamily=\relax\fi
+\makeatother
+
+\def\testglyph{%
+逢芦飴溢茨鰯淫迂厩噂餌襖迦牙廻恢晦蟹葛鞄
+釜翰翫徽祇汲灸笈卿饗僅喰櫛屑粂祁隙倦捲牽
+鍵諺巷梗膏鵠甑叉榊薩鯖錆鮫餐杓灼酋楯薯藷
+哨鞘杖蝕訊逗摺撰煎煽穿箭詮噌遡揃遜腿蛸辿
+樽歎註瀦捗槌鎚辻挺鄭擢溺兎堵屠賭瀞遁謎灘
+楢禰牌這秤駁箸叛挽誹樋稗逼謬豹廟瀕斧蔽瞥
+蔑篇娩鞭庖蓬鱒迄儲餅籾爺鑓愈猷漣煉簾榔冤
+叟咬嘲囀徘扁棘橙狡甕甦疼祟竈筵篝腱艘芒虔
+蜃蠅訝靄靱騙鴉
+\ifuptexmode
+ 俱剝吞噓姸屛幷瘦繫摯懲蘒譿悞煒驊夆暵屢
+\fi
+}
+\def\testutf{%
+\UTF{9022}\UTF{82A6}\UTF{98F4}\UTF{6EA2}\UTF{8328}\UTF{9C2F}\UTF{6DEB}\UTF{8FC2}\UTF{53A9}\UTF{5642}%
+\UTF{990C}\UTF{8956}\UTF{8FE6}\UTF{7259}\UTF{5EFB}\UTF{6062}\UTF{6666}\UTF{87F9}\UTF{845B}\UTF{9784}%
+\UTF{91DC}\UTF{7FF0}\UTF{7FEB}\UTF{5FBD}\UTF{7947}\UTF{6C72}\UTF{7078}\UTF{7B08}\UTF{537F}\UTF{9957}%
+\UTF{50C5}\UTF{55B0}\UTF{6ADB}\UTF{5C51}\UTF{7C82}\UTF{7941}\UTF{9699}\UTF{5026}\UTF{6372}\UTF{727D}%
+\UTF{9375}\UTF{8AFA}\UTF{5DF7}\UTF{6897}\UTF{818F}\UTF{9D60}\UTF{7511}\UTF{53C9}\UTF{698A}\UTF{85A9}%
+\UTF{9BD6}\UTF{9306}\UTF{9BAB}\UTF{9910}\UTF{6753}\UTF{707C}\UTF{914B}\UTF{696F}\UTF{85AF}\UTF{85F7}%
+\UTF{54E8}\UTF{9798}\UTF{6756}\UTF{8755}\UTF{8A0A}\UTF{9017}\UTF{647A}\UTF{64B0}\UTF{714E}\UTF{717D}%
+\UTF{7A7F}\UTF{7BAD}\UTF{8A6E}\UTF{564C}\UTF{9061}\UTF{63C3}\UTF{905C}\UTF{817F}\UTF{86F8}\UTF{8FBF}%
+\UTF{6A3D}\UTF{6B4E}\UTF{8A3B}\UTF{7026}\UTF{6357}\UTF{69CC}\UTF{939A}\UTF{8FBB}\UTF{633A}\UTF{912D}%
+\UTF{64E2}\UTF{6EBA}\UTF{514E}\UTF{5835}\UTF{5C60}\UTF{8CED}\UTF{701E}\UTF{9041}\UTF{8B0E}\UTF{7058}%
+\UTF{6962}\UTF{79B0}\UTF{724C}\UTF{9019}\UTF{79E4}\UTF{99C1}\UTF{7BB8}\UTF{53DB}\UTF{633D}\UTF{8AB9}%
+\UTF{6A0B}\UTF{7A17}\UTF{903C}\UTF{8B2C}\UTF{8C79}\UTF{5EDF}\UTF{7015}\UTF{65A7}\UTF{853D}\UTF{77A5}%
+\UTF{8511}\UTF{7BC7}\UTF{5A29}\UTF{97AD}\UTF{5E96}\UTF{84EC}\UTF{9C52}\UTF{8FC4}\UTF{5132}\UTF{9905}%
+\UTF{7C7E}\UTF{723A}\UTF{9453}\UTF{6108}\UTF{7337}\UTF{6F23}\UTF{7149}\UTF{7C3E}\UTF{6994}\UTF{51A4}%
+\UTF{53DF}\UTF{54AC}\UTF{5632}\UTF{56C0}\UTF{5F98}\UTF{6241}\UTF{68D8}\UTF{6A59}\UTF{72E1}\UTF{7515}%
+\UTF{7526}\UTF{75BC}\UTF{795F}\UTF{7AC8}\UTF{7B75}\UTF{7BDD}\UTF{8171}\UTF{8258}\UTF{8292}\UTF{8654}%
+\UTF{8703}\UTF{8805}\UTF{8A1D}\UTF{9744}\UTF{9771}\UTF{9A19}\UTF{9D09}%
+\UTF{4FF1}\UTF{525D}\UTF{541E}\UTF{5653}\UTF{59F8}\UTF{5C5B}\UTF{5E77}\UTF{7626}\UTF{7E6B}\UTF{646F}%
+\UTF{FA40}\UTF{FA20}\UTF{8B7F}\UTF{609E}\UTF{7152}\UTF{9A4A}\UTF{5906}\UTF{66B5}\UTF{5C62}}
+
+\begin{document}
+class: \texttt{\class}\\
+option: \texttt{\option}\\
+burasage: \texttt{\burasage}\\
+jis version: \texttt{\jisvar}\\
+
+[mc/m]
+
+\testglyph
+
+\testutf
+
+{\bfseries%
+[mc/bx]
+
+\testglyph
+
+\testutf
+}
+
+{\gtfamily
+[gt/m]
+
+\testglyph
+
+\testutf
+
+{\bfseries%
+[gt/bx]
+
+\testglyph
+
+\testutf
+}}
+
+{\mgfamily
+[mg/m]
+
+\testglyph
+
+\testutf
+}
+
+%%% extra font
+{\ltseries%
+[mc/lt]
+
+\testglyph
+
+\testutf
+}
+
+{\gtfamily
+{\ebseries%
+[gt/eb]
+
+\testglyph
+
+\testutf
+}}
+
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest1.tex b/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest1.tex
new file mode 100644
index 0000000000..087bcbcece
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest1.tex
@@ -0,0 +1,103 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{deluxe}
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+\documentclass[a4paper,titlepage, draft]{\class}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+
+\pagestyle{empty}
+%\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
+\textwidth=115mm
+\textheight=210mm
+\begin{document}
+
+クラス:\texttt{\class}
+
+\vspace{\baselineskip}
+\huge
+\kanjiskip 0pt plus 1sp minus 1sp
+\xkanjiskip 0.25zw plus 1sp minus 1sp
+{\propshape
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+
+\bfseries
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+}
+
+{\gtfamily\mdseries\propshape
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+
+\bfseries\propshape
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+}
+
+{\mgfamily\propshape
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ}
+
+{\gtfamily\ebseries
+\noindent ヽヾゝゞーぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+}
+
+\ifuptexmode
+otfbeta-uptex (japanese-otf-uptex) Ver.0.18でProportional仮名を、
+Ver.0.21で半角片仮名を拡張しました。
+
+\long\def\testA{〃〆ヿゟゔゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿヷヸヹヺ
+𨳝櫛𥡴𨻶杓巽屠兔冕冤𡨚𤏐爨🄀
+🄐🄑🄒🄓🄔🄕🄖🄗🄘🄙🄚🄛🄜🄝🄞🄟🄠🄡🄢🄣
+🄤🄥🄦🄧🄨🄩🅐🅑🅒🅓🅔🅕🅖🅗🅘🅙🅚🅛🅜🅝
+🅞🅟🅠🅡🅢🅣🅤🅥🅦🅧🅨🅩🄰🄱🄲🄳🄴🄵🄶🄷
+🄸🄹🄺🄻🄼🄽🄾🄿🅀🅁🅂🅃🅄🅅🅆🅇🅈🅉🈂🈷
+🅰🅱🅲🅳🅴🅵🅶🅷🅸🅹🅺🅻🅼🅽🅾🅿🆀🆁🆂🆃
+🆄🆅🆆🆇🆈🆉眞𠤎𦥑𫟘沿芽槪割𦈢𠮷𩵋卿𫞎憲
+𠩤浩𫝆𫝷滋𠮟勺爵周将𠀋城𩙿真𠆢𫝑成𧾷𣳾炭
+𥫗彫潮𡈽冬𤴔姬𫞉諭輸𥙿𦚰𠘨𠂊𠦄卉寃拔𦦙𣏌
+杞𪧦𫞽絣𠔿𦉪𠂰𨦇𨸗𫠚𤋮桒𣲾𠘑嶲你𣘺𣏾𢘉
+。「」、・ヲァィゥェォャュョッ
+ーアイウエオカキクケコサシスセソ
+タチツテトナニヌネノハヒフヘホマ
+ミムメモヤユヨラリルレロワン゙゚
+}
+
+{\propshape
+\noindent\testA
+
+\bfseries
+\noindent\testA
+}
+
+{\gtfamily\mdseries\propshape
+\noindent\testA
+
+\bfseries\propshape
+\noindent\testA
+}
+
+{\mgfamily\propshape
+\noindent\testA
+}
+
+{\gtfamily\ebseries
+\noindent\testA
+}
+\fi
+
+
+\end{document}
+
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest2.tex b/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest2.tex
new file mode 100644
index 0000000000..a0b9bfcb6e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/upkanatest2.tex
@@ -0,0 +1,75 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{deluxe}
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+\documentclass[a4paper,draft,twocolumn]{\class}
+\usepackage[\@opt@]{otf}
+
+\makeatother
+\pagestyle{empty}
+%\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
+\parindent=0zw
+\textwidth=25zw
+\textheight=200mm
+\columnsep=1zw
+\makeatletter
+\long\def\test{ひらかな「ひらかな」ひらかな「ひら」「かな」\par
+漢字漢字「漢字漢字」漢字漢字「漢字」「漢字」\par
+ひらかな「ひらかな」漢字漢字「漢字」ひらかな\par
+次は“引用符”の‘テスト’です,ね.\par
+行末の区点は全角ドリに。なります。
+□□□□□□□□□□□□
+□□□□、□□□、□□□。\par
+行末の読点は半角ドリに、なります。\par
+□□□□□□□□□□□□
+□□□□、□□□、□□□、□□□。□□□。\par
+疑問符の後に空白は入るでしょうか?入った!オッケイです.\par
+\hbox to 2.5zw{漢:字}
+\setbox1=\hbox{あ}
+\dimen1=\wd1 \advance\dimen1 by .5zw
+\advance\dimen1 by \wd1
+\hbox to \dimen1{あ:あ}
+\dimen1=\wd1 \advance\dimen1 by 1.75zw
+\hbox to \dimen1{漢:あ}
+%\hbox to \dimen1{漢\hfil あ}
+\hbox to 7zw{漢字「漢字」漢字}
+\setbox1=\hbox{ひら}
+\dimen1=\wd1 \multiply\dimen1 by 3
+\advance\dimen1 by 1zw
+\hbox to \dimen1{ひら「ひら」ひら}
+}
+\makeatother
+\begin{document}
+
+クラス:\texttt{\class}
+
+\vspace{\baselineskip}
+%\kanjiskip 0pt plus 1sp minus 1sp
+\begingroup
+\propshape
+{\bfseries プロポーショナル組の例}
+
+\test
+\endgroup
+\newpage
+\phantom{クラス}
+
+\vspace{\baselineskip}
+{\bfseries べた組みの例}
+
+\test
+\end{document}
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothebn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpmgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgexpminrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothebn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlmgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-h.tfm
new file mode 100644
index 0000000000..03141ee738
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-v.tfm
new file mode 100644
index 0000000000..d3c90b3701
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upbrsgnmlminrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothebn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpmgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpmgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminbn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminbn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminl-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminl-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminln-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminln-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upexpminrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upexpminrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upexpminrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothb-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothb-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothbn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothbn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgotheb-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgotheb-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothebn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothebn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothebn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothebn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothebn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothebn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothr-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothr-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothrn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphgothrn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphmgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphmgothr-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphmgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphmgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphmgothr-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphmgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphmgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminb-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminb-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminbn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminbn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminl-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminl-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminln-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminln-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminr-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminr-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminrn-h.tfm
new file mode 100644
index 0000000000..be90188003
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uphminrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uphminrn-v.tfm
new file mode 100644
index 0000000000..dddd977640
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uphminrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothebn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlmgothrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminl-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminl-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminln-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminln-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/upnmlminrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygothb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygothb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygothb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygothb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygothb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygothb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygotheb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubygothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubygothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubygothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubymgothr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminb-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminb-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminb-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminb-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminb-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminb-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminl-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminl-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminr-h.tfm
new file mode 100644
index 0000000000..1cafb877f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/uprubyminr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/uprubyminr-v.tfm
new file mode 100644
index 0000000000..cc9084c2b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/uprubyminr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcgro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcgro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcgro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfcmro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfcmro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfcmro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrw-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrw-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrw-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrw-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrw-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrw-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgry-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgry-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgry-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgry-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgry-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgry-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfgrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfgrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfgrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbo-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbo-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbo-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbo-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbo-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbo-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbu-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbu-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbu-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbu-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbu-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbu-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgby-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgby-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgby-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgby-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgby-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgby-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgbz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgbz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgbz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgej-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgej-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgej-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgej-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgej-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgej-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgek-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgek-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgek-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgek-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgek-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgek-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgel-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgel-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgel-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgel-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgel-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgel-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgem-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgem-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgem-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgem-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgem-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgem-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgen-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgen-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgen-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgen-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgen-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgen-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeo-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeo-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeo-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeo-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeo-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeo-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgep-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgep-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgep-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgep-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgep-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgep-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjger-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjger-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjger-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjger-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjger-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjger-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjges-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjges-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjges-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjges-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjges-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjges-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjget-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjget-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjget-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjget-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjget-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjget-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeu-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeu-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeu-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgeu-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgeu-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgeu-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgev-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgev-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgev-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgev-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgev-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgev-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgex-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgex-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgex-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgex-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgex-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgex-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgey-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgey-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgey-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgey-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgey-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgey-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgez-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgez-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgez-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgez-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgez-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgez-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgry-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgry-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgry-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgry-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgry-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgry-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjgrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjgrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjgrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbo-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbo-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbo-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbo-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbo-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbo-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbu-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbu-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbu-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbu-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbu-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbu-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmby-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmby-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmby-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmby-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmby-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmby-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmbz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmbz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmbz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgry-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgry-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgry-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgry-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgry-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgry-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmgrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmll-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmll-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmll-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmll-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmll-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmll-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmln-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmln-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmln-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmln-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmln-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmln-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlo-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlo-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlo-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlo-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlo-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlo-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmls-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmls-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmls-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmls-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmls-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmls-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlu-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlu-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlu-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlu-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlu-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlu-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmly-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmly-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmly-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmly-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmly-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmly-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmlz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmlz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmlz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmry-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmry-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmry-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmry-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmry-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmry-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfjmrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfjmrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfjmrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrj-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrj-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrj-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrj-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrj-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrj-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrw-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrw-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrw-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrw-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrw-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrw-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmry-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmry-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmry-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmry-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmry-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmry-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utfmrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utfmrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utfmrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrw-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrw-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrw-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrw-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrw-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrw-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftgrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftgrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftgrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrk-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrk-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrk-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrk-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrk-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrk-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrl-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrl-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrl-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrl-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrl-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrl-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrm-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrm-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrm-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrm-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrm-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrm-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrn-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrn-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrn-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrn-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrn-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrn-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmro-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmro-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmro-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmro-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmro-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmro-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrp-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrp-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrp-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrp-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrp-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrp-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrq-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrq-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrq-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrq-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrq-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrq-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrr-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrr-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrr-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrr-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrr-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrr-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrs-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrs-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrs-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrs-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrs-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrs-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrt-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrt-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrt-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrt-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrt-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrt-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmru-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmru-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmru-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmru-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmru-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmru-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrv-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrv-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrv-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrv-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrv-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrv-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrw-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrw-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrw-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrw-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrw-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrw-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrx-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrx-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrx-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrx-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrx-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrx-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrz-h.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrz-h.tfm
new file mode 100644
index 0000000000..29cb2cd42d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrz-h.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/tfm/utftmrz-v.tfm b/language/japanese/japanese-otf-uptex/tfm/utftmrz-v.tfm
new file mode 100644
index 0000000000..00f00ca892
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/tfm/utftmrz-v.tfm
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/umakeotf b/language/japanese/japanese-otf-uptex/umakeotf
new file mode 100755
index 0000000000..5acab5eb18
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umakeotf
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+#
+# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+#
+
+# setting for ovp2ovf & uppltotf
+. ./umakeotf_pre
+
+if test ! -d tfm; then
+mkdir tfm
+fi
+
+
+echo "making tfm ..."
+for series in nml exp ruby
+do
+for face in minr gothr minb gothb mgothr
+do
+$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}-v.tfm
+done
+done
+#for extra fonts
+for series in nml exp ruby
+do
+for face in gotheb minl
+do
+$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}-v.tfm
+done
+done
+
+
+echo "making vf (wait a while)..."
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -cq upnml${face}-h uph${face}-h
+./umkjvf -ucs -sp 1 -cm -cp upnml${face}-v uph${face}-v
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -cq upnml${face}-h uph${face}-h
+./umkjvf -ucs -sp 1 -cm -cp upnml${face}-v uph${face}-v
+done
+
+echo "making alt. kana ..."
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -cq -expert upexp${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -expert upexp${face}-v uph${face}-v cidj${face}
+./umkjvf -ucs -sp 1 -cq -ruby upruby${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -ruby upruby${face}-v uph${face}-v cidj${face}
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -cq -expert upexp${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -expert upexp${face}-v uph${face}-v cidj${face}
+./umkjvf -ucs -sp 1 -cq -ruby upruby${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -ruby upruby${face}-v uph${face}-v cidj${face}
+done
+
+
+echo "making tfm for supplementary plane ..."
+perl script/mktfm_sp.pl
+echo "making vf for supplementary plane ..."
+perl script/mkutfvf_sp.pl
+
+
+echo "finishing ..."
+if test ! -d vf; then
+mkdir vf
+fi
+mv *.vf vf/
+mv *.tfm tfm/
+rm -rf ovp
diff --git a/language/japanese/japanese-otf-uptex/umakeotf_brsg b/language/japanese/japanese-otf-uptex/umakeotf_brsg
new file mode 100755
index 0000000000..f2c878285c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umakeotf_brsg
@@ -0,0 +1,65 @@
+#!/bin/sh
+
+#
+# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+#
+
+# setting for ovp2ovf & uppltotf
+. ./umakeotf_pre
+
+if test ! -d tfm; then
+mkdir tfm
+fi
+
+
+echo "making tfm for burasage ..."
+for series in nml exp
+do
+for face in minr gothr minb gothb mgothr
+do
+$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}-v.tfm
+done
+done
+#extra fonts
+for series in nml exp
+do
+for face in gotheb minl
+do
+$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}-v.tfm
+done
+done
+
+
+echo "making vf for burasage ..."
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -sage -cq upbrsgnml${face}-h uph${face}-h
+./umkjvf -ucs -sp 1 -sage -cm -cp upbrsgnml${face}-v uph${face}-v
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -sage -cq upbrsgnml${face}-h uph${face}-h
+./umkjvf -ucs -sp 1 -sage -cm -cp upbrsgnml${face}-v uph${face}-v
+done
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -sage -cq -expert upbrsgexp${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -sage -cm -cp -expert upbrsgexp${face}-v uph${face}-v cidj${face}
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -sage -cq -expert upbrsgexp${face}-h uph${face}-h cidj${face}
+./umkjvf -ucs -sp 1 -sage -cm -cp -expert upbrsgexp${face}-v uph${face}-v cidj${face}
+done
+
+
+echo "finishing ..."
+if test ! -d vf; then
+mkdir vf
+fi
+mv *.vf vf/
+mv *.tfm tfm/
diff --git a/language/japanese/japanese-otf-uptex/umakeotf_jis04 b/language/japanese/japanese-otf-uptex/umakeotf_jis04
new file mode 100755
index 0000000000..6001bf2c62
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umakeotf_jis04
@@ -0,0 +1,112 @@
+#!/bin/sh
+
+#
+# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+#
+
+# setting for ovp2ovf & uppltotf
+. ./umakeotf_pre
+
+if test ! -d tfm; then
+mkdir tfm
+fi
+
+
+echo "making tfm for jis2004 ..."
+for series in nml exp
+do
+for face in minr gothr minb gothb mgothr
+do
+$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}n-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}n-v.tfm
+done
+done
+#for extra fonts
+for series in nml exp
+do
+for face in gotheb minl
+do
+$UPPLTOTF -kanji=uptex basepl/ubase-h.pl tfm/up${series}${face}n-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubase-v.pl tfm/up${series}${face}n-v.tfm
+done
+done
+
+
+echo "making tfm for burasage & jis2004 ..."
+for series in nml exp
+do
+for face in minr gothr minb gothb mgothr
+do
+$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}n-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}n-v.tfm
+done
+done
+#for extra fonts
+for series in nml exp
+do
+for face in gotheb minl
+do
+$UPPLTOTF -kanji=uptex basepl/ubrsg-h.pl tfm/upbrsg${series}${face}n-h.tfm
+$UPPLTOTF -kanji=uptex basepl/ubrsg-v.pl tfm/upbrsg${series}${face}n-v.tfm
+done
+done
+
+
+echo "making vf for jis2004 ..."
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -cq upnml${face}n-h uph${face}n-h
+./umkjvf -ucs -sp 1 -cm -cp upnml${face}n-v uph${face}n-v
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -cq upnml${face}n-h uph${face}n-h
+./umkjvf -ucs -sp 1 -cm -cp upnml${face}n-v uph${face}n-v
+done
+
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -cq -expert upexp${face}n-h uph${face}n-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -expert upexp${face}n-v uph${face}n-v cidj${face}
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -cq -expert upexp${face}n-h uph${face}n-h cidj${face}
+./umkjvf -ucs -sp 1 -cm -cp -expert upexp${face}n-v uph${face}n-v cidj${face}
+done
+
+
+echo "making vf for burasage & jis2004 ..."
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -sage -cq upbrsgnml${face}n-h uph${face}n-h
+./umkjvf -ucs -sp 1 -sage -cm -cp upbrsgnml${face}n-v uph${face}n-v
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -sage -cq upbrsgnml${face}n-h uph${face}n-h
+./umkjvf -ucs -sp 1 -sage -cm -cp upbrsgnml${face}n-v uph${face}n-v
+done
+
+for face in minr gothr minb gothb mgothr
+do
+./umkjvf -ucs -sp 1 -sage -cq -expert upbrsgexp${face}n-h uph${face}n-h cidj${face}
+./umkjvf -ucs -sp 1 -sage -cm -cp -expert upbrsgexp${face}n-v uph${face}n-v cidj${face}
+done
+#extra fonts
+for face in gotheb minl
+do
+./umkjvf -ucs -sp 1 -sage -cq -expert upbrsgexp${face}n-h uph${face}n-h cidj${face}
+./umkjvf -ucs -sp 1 -sage -cm -cp -expert upbrsgexp${face}n-v uph${face}n-v cidj${face}
+done
+
+
+echo "finishing ..."
+if test ! -d vf; then
+mkdir vf
+fi
+mv *.vf vf/
+mv *.tfm tfm/
diff --git a/language/japanese/japanese-otf-uptex/umakeotf_pre b/language/japanese/japanese-otf-uptex/umakeotf_pre
new file mode 100644
index 0000000000..1336cc2182
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umakeotf_pre
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+#
+# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+#
+
+# setting for ovp2ovf & uppltotf
+#OVP2OVF='omfonts -ovp2ovf'
+OVP2OVF=ovp2ovf
+export OVP2OVF
+UPPLTOTF=uppltotf
+
diff --git a/language/japanese/japanese-otf-uptex/umakeotf_prop b/language/japanese/japanese-otf-uptex/umakeotf_prop
new file mode 100755
index 0000000000..378429ed44
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umakeotf_prop
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+#
+# This script is a part of otfbeta-uptex (a.k.a. japanese-otf-uptex).
+#
+
+# setting for ovp2ovf & uppltotf
+. ./umakeotf_pre
+
+if test ! -d tfm; then
+mkdir tfm
+fi
+if test ! -d vf; then
+mkdir vf
+fi
+if test ! -d ovp; then
+mkdir ovp
+fi
+
+echo "making proportional kana tfm/vf ..."
+perl -s script/umkpkana.pl -sp=1 -hk
+perl -s script/umkvpkana.pl -sp=1
+
+for face in minw3 minw6 kakuw3 kakuw6 maruw4
+do
+$UPPLTOTF -kanji=uptex pl/upphira${face}-h.pl tfm/upphira${face}-h.tfm
+$UPPLTOTF -kanji=uptex pl/upphira${face}-v.pl tfm/upphira${face}-v.tfm
+done
+
+for face in minw3 minw6 kakuw3 kakuw6 maruw4
+do
+$OVP2OVF ovp/upphira${face}-h.ovp vf/upphira${face}-h.vf vf/upphira${face}-h.ofm
+$OVP2OVF ovp/upphira${face}-v.ovp vf/upphira${face}-v.vf vf/upphira${face}-v.ofm
+done
+
+rm vf/*.ofm
+rm -rf ovp
+rm -rf pl
diff --git a/language/japanese/japanese-otf-uptex/umkjvf b/language/japanese/japanese-otf-uptex/umkjvf
new file mode 100755
index 0000000000..39973e0999
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/umkjvf
@@ -0,0 +1,953 @@
+#!/usr/bin/perl
+###################
+### main part ###
+###################
+use FindBin;
+use lib "$FindBin::Bin/script";
+use CheckDVICode;
+#initialize
+&initialize_constant;
+#processing arguments
+&proc_arg;
+if ($sp==1) { # supplemental plane
+ use MakeSPList;
+ &make_sp_char_list('j');
+ %exist_char=%{$MakeSPList::r_exist_char->{'j'}};
+}
+#make ovp
+&font_header;
+&write_char;
+#make vf & tfm
+&make_vf;
+&make_tfm;
+
+##########################
+#### dfn of sub rtns ###
+##########################
+sub initialize_constant{
+ $unknown=0;
+ $burasage=0;
+ $jis2004=0;
+ $minute_option=0;
+ $alt_kana_true=0;
+ $ruby_hira_code=0x356F;
+ $ruby_kata_code=0x3751;
+ $exp_hira_code_h=0x6F63;
+ $exp_kata_code_h=0x313D;
+ $exp_hira_code_v=0x325a;
+ $exp_kata_code_v=0x3434;
+ $ruby_font_map=2;
+ $exp_font_map=2;
+ @yoko_tfm_binary=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
+ @tate_tfm_binary=(0x00, 0x09, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
+ @yoko_ucs_tfm_binary=map{ hex($_) } qw/
+ 00 0b 00 40 00 6c 00 12 00 00 00 01 00 03 00 02
+ 00 02 00 01 00 00 00 00 00 00 00 09 00 00 00 00
+ 00 a0 00 00 0b 55 4e 53 50 45 43 49 46 49 45 44
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ 00 00 00 00 00 00 00 00 00 00 00 00 0b 55 4e 53
+ 50 45 43 49 46 49 45 44 00 00 00 00 00 00 00 00
+ 80 00 00 00 00 00 00 00 ff 61 00 01 ff 62 00 01
+ ff 63 00 01 ff 64 00 01 ff 65 00 01 ff 66 00 01
+ ff 67 00 01 ff 68 00 01 ff 69 00 01 ff 6a 00 01
+ ff 6b 00 01 ff 6c 00 01 ff 6d 00 01 ff 6e 00 01
+ ff 6f 00 01 ff 70 00 01 ff 71 00 01 ff 72 00 01
+ ff 73 00 01 ff 74 00 01 ff 75 00 01 ff 76 00 01
+ ff 77 00 01 ff 78 00 01 ff 79 00 01 ff 7a 00 01
+ ff 7b 00 01 ff 7c 00 01 ff 7d 00 01 ff 7e 00 01
+ ff 7f 00 01 ff 80 00 01 ff 81 00 01 ff 82 00 01
+ ff 83 00 01 ff 84 00 01 ff 85 00 01 ff 86 00 01
+ ff 87 00 01 ff 88 00 01 ff 89 00 01 ff 8a 00 01
+ ff 8b 00 01 ff 8c 00 01 ff 8d 00 01 ff 8e 00 01
+ ff 8f 00 01 ff 90 00 01 ff 91 00 01 ff 92 00 01
+ ff 93 00 01 ff 94 00 01 ff 95 00 01 ff 96 00 01
+ ff 97 00 01 ff 98 00 01 ff 99 00 01 ff 9a 00 01
+ ff 9b 00 01 ff 9c 00 01 ff 9d 00 01 ff 9e 00 01
+ ff 9f 00 01 02 11 00 00 01 11 00 00 00 00 00 00
+ 00 08 00 00 00 10 00 00 00 00 00 00 00 0e 14 7b
+ 00 00 00 00 00 01 eb 85 00 00 00 00 00 00 00 00
+ 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00
+ 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ /;
+ @minute_code=(0x216C, 0x216C, 0x216D, 0x216D);
+ @shift_minute_code=(0x818C, 0x818C, 0x818D, 0x818D);
+ @cid_minute_code=(0x6E3D, 0x6E3E, 0x6C44, 0x6C45);
+ @cid_hquote_code=(0x3A4E, 0x3A4F, 0x3A50, 0x3A51); # CID: 670 .. 673
+ @cid_vquote_code=(0x314A, 0x3143, 0x3148, 0x3145); # CID: 8282, 8275, 8280, 8277
+ @ruby_odori_h=(0x3559, 0x355a, 0x355b, 0x355c, 0x3933);
+ @ruby_odori_v=(0x3559, 0x355a, 0x355b, 0x355c, 0x3934);
+ @exp_odori_h=(0x313a, 0x313b, 0x6f61, 0x6f62, 0x313c); # CID: 12362, 12363, 12273, 12274, 12364
+ @exp_odori_v=(0x3431, 0x3432, 0x3258, 0x3259, 0x3433); # CID: 12545, 12456, 12457, 12274, 12547
+ @cid_hkana_code=(0x3537 .. 0x356F, 0x3630 .. 0x3635); # CID: 327 .. 389
+ %kaisei_jikei = (0x3029 => 8266, 0x3032 => 7961, 0x303B => 7634, 0x306E => 7635, 0x3071 => 7962, 0x3073 => 7636, 0x307C => 7637, 0x312A => 7638, 0x3139 => 20271, 0x313D => 7642, 0x3142 => 13650, 0x3228 => 7645, 0x3260 => 7647, 0x3267 => 7965, 0x3276 => 13673, 0x327A => 20269, 0x3322 => 7650, 0x336B => 7652, 0x3373 => 7653, 0x3378 => 20290, 0x344D => 7656, 0x3465 => 7657, 0x352B => 7658, 0x3540 => 7659, 0x3562 => 7966, 0x3564 => 20270, 0x3568 => 20263, 0x362A => 7661, 0x3642 => 7968, 0x364F => 7662, 0x3674 => 7664, 0x367B => 7665, 0x367D => 7666, 0x3729 => 20272, 0x3737 => 7668, 0x3764 => 20273, 0x3771 => 7674, 0x377E => 7676, 0x3830 => 20276, 0x3841 => 7678, 0x392B => 7679, 0x393C => 20279, 0x3974 => 7683, 0x3979 => 20284, 0x3A35 => 20281, 0x3A67 => 7686, 0x3B27 => 7688, 0x3B2A => 7689, 0x3B2C => 7690, 0x3B2D => 20280, 0x3B41 => 7970, 0x3C5D => 7695, 0x3C5E => 7696, 0x3D36 => 7698, 0x3D5D => 13460, 0x3D72 => 7701, 0x3D73 => 7702, 0x3E25 => 7703, 0x3E64 => 7708, 0x3E73 => 20282, 0x3F2A => 7709, 0x3F56 => 13860, 0x3F60 => 7711, 0x4022 => 7713, 0x4071 => 7716, 0x4079 => 7718, 0x407A => 7972, 0x407C => 7973, 0x407D => 7974, 0x4127 => 7720, 0x4139 => 7721, 0x414C => 7722, 0x4237 => 7975, 0x423D => 7726, 0x425C => 7728, 0x427D => 7733, 0x4329 => 7735, 0x432E => 7738, 0x4337 => 13915, 0x4370 => 7740, 0x4375 => 7741, 0x443D => 7743, 0x4448 => 7744, 0x444A => 7745, 0x4454 => 8267, 0x4472 => 20286, 0x4522 => 7748, 0x4527 => 7749, 0x452E => 7750, 0x4546 => 13949, 0x4548 => 7753, 0x454B => 7754, 0x4552 => 7756, 0x4654 => 7761, 0x465B => 20287, 0x4666 => 7766, 0x4667 => 7767, 0x466A => 7768, 0x4729 => 7769, 0x4757 => 7771, 0x4767 => 7772, 0x4769 => 7773, 0x477D => 20288, 0x4824 => 7775, 0x4840 => 7978, 0x4854 => 7778, 0x4870 => 13495, 0x4875 => 7780, 0x4923 => 7782, 0x492F => 7783, 0x4935 => 7785, 0x493F => 20222, 0x4940 => 7786, 0x494E => 7787, 0x4960 => 20289, 0x4A43 => 7789, 0x4A4D => 7790, 0x4A4E => 14013, 0x4A53 => 7979, 0x4A5A => 7791, 0x4A5C => 20291, 0x4A79 => 7792, 0x4B29 => 7794, 0x4B70 => 7796, 0x4B78 => 7980, 0x4C59 => 7798, 0x4C5F => 7799, 0x4C62 => 20293, 0x4C6C => 20294, 0x4C7A => 7801, 0x4C7C => 7802, 0x4D32 => 14074, 0x4E7A => 7809, 0x4E7B => 7810, 0x4E7C => 20265, 0x4F31 => 7812, 0x514D => 7817, 0x5257 => 14111, 0x527B => 20277, 0x535E => 7821, 0x5373 => 14116, 0x5751 => 13538, 0x5928 => 7991, 0x6044 => 20278, 0x6131 => 20267, 0x6134 => 20283, 0x6156 => 20175, 0x635E => 20285, 0x6427 => 20266, 0x6440 => 7997, 0x6727 => 20275, 0x675B => 14196, 0x676A => 20292, 0x694A => 20274, 0x6967 => 20296, 0x6A24 => 20295, 0x6B43 => 20268, 0x7057 => 13624, 0x7159 => 8003, 0x726D => 14272);
+}
+sub reorder_odoriji {
+=comment
+The order of odorijis in UCS is different from that in JIS
+JIS UCS
+0x2133 U+30FD # KATAKANA ITERATION MARK
+0x2134 U+30FE # KATAKANA VOICED ITERATION MARK
+0x2135 U+309D # HIRAGANA ITERATION MARK
+0x2136 U+309E # HIRAGANA VOICED ITERATION MARK
+0x213C U+30FC # KATAKANA-HIRAGANA PROLONGED SOUND MARK
+=cut
+ my $ref;
+ foreach $ref (\@ruby_odori_h, \@ruby_odori_v, \@exp_odori_h, \@exp_odori_v) {
+ @$ref = @$ref[2..4, 0, 1];
+ }
+}
+sub proc_arg {
+ if ($#ARGV == -1) {&print_help;}
+ GetOptions(\@ARGV, ['^-b', \$baseline_shift, 1], ['^-m', \$minute_option, 0], ['^-cm', \$cid_minute, 0], ['^-cq', \$cid_quote, 0], ['^-cp', \$comma_period, 0], ['^-chk', \$cid_hankana, 0], ['^-SJIS', \$sjis, 0], ['^-scale', \$scale, 1], ['^-notfm', \$without_tfm, 1], ['^-expert', \$expert, 0], ['^-ruby', \$ruby, 0], ['^-sage', \$burasage, 0], ['^-jp04', \$jis2004, 0], ['^-ucs', \$ucs, 0], ['^-sp', \$sp, 1], ['^-ovp2ovf', \$ovp2ovf_command, 1], ['^-h(e|el|elp)?', \$help, 0], ['^-dbg', \$debug_mode, 0], ['^-(.+)', \$unknown, 0]);
+ if ($unknown == 1){
+ print "mkjvf: Unknown options!\n";
+ &print_help;
+ }
+ if ($help == 1){&print_help;}
+ if (($expert == 0) && ($ruby == 0)){
+ if ($#ARGV <= 0) {
+ print "mkjvf: Need two to three file arguments.\n";
+ &print_help;
+ }
+ } elsif (($expert != 0) && ($ruby != 0)){
+ print "mkjvf: You can't use \"-ruby\" and \"-expert\" at same time.\n";
+ &print_help;
+ } elsif (($scale != 0) && ($ruby != 0)){
+ print "mkjvf: You can't use \"-ruby\" and \"-scale\" at same time.\n";
+ &print_help;
+ } elsif (($jis2004 != 0) && ($ruby != 0)){
+ print "mkjvf: You can't use \"-ruby\" and \"-jp04\" at same time.\n";
+ &print_help;
+ } elsif (($jis2004 != 0) && ($sjis != 0)){
+ print "mkjvf: You can't use \"-sjis\" and \"-jp04\" at same time.\n";
+ &print_help;
+ } elsif (($jis2004 != 0) && ($ucs != 0)){
+ print "mkjvf: You can't use \"-ucs\" and \"-jp04\" at same time.\n";
+ &print_help;
+ } else {
+ if ($#ARGV <= 1) {
+ print "mkjvf: Need three file arguments for this option.\n";
+ &print_help;
+ }
+ $alt_kana_true=1;
+ }
+ if ($scale < 0 || $scale >= 1){
+ print "mkjvf: Invalid Scale!!\n";
+ &print_help;
+ }
+ if ($scale == 0){$scale = 1;}
+ if ($sjis != 0){$max_ku=120;}else{$max_ku=94;}
+ if ($cid_minute != 0){$minute_option = 1;}
+ if ($ucs){&reorder_odoriji; $CheckDVICode::is_ucs=$ucs;}
+ $tfm_name = shift(@ARGV);
+ $tfm_name =~ s/\.tfm//;
+ $kanji_font = shift(@ARGV);
+ $kanji_font =~ s/\.tfm//;
+ $kana_font = shift(@ARGV);
+ $kana_font =~ s/\.tfm//;
+ &get_metric;
+ $half_width= ($font_at / 2);
+ $quater_width= ($font_at / 4);
+ @minute_right=($font_at*0.1, $font_at*0.4, $font_at*0.1, $font_at*0.4);
+ @minute_down=(-$font_at*0.65, $font_at*0.65, -$font_at*0.6, $font_at*0.6);
+ #open output file
+ open(OVP,">$tfm_name.ovp") || die "Can't make \'$tfm_name.ovp\'!\n";
+ binmode(OVP);
+}
+sub font_header {
+ print OVP "(VTITLE )\n";
+ print OVP "(OFMLEVEL D 0)\n";
+ print OVP "(DESIGNSIZE R 10.000000)\n";
+ print OVP "(CHECKSUM O 0)\n";
+ print OVP "(MAPFONT D 1\n";
+ print OVP " (FONTNAME $kanji_font)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$font_at;
+ printf OVP " (FONTDSIZE R %f)\n",$design_size;
+ print OVP " )\n";
+ if ($ruby == 1){
+ &get_face;
+ if ($direction eq "y"){
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $face"."3-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ if ($ucs) {
+ print OVP "(MAPFONT D 3\n";
+ print OVP " (FONTNAME $face"."4-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }elsif ($direction eq "t"){
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $face"."3-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ if ($ucs) {
+ print OVP "(MAPFONT D 3\n";
+ print OVP " (FONTNAME $face"."4-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }
+ } elsif ($expert == 1) {
+ &get_face;
+ if ($direction eq "y"){
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $face"."2-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$scale;
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 3\n";
+ print OVP " (FONTNAME $face"."3-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$scale;
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }elsif ($direction eq "t"){
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $face"."3-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$scale;
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ if ($ucs) {
+ print OVP "(MAPFONT D 3\n";
+ print OVP " (FONTNAME $face"."4-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$scale;
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }
+ } else {
+ if ($kana_font ne ""){
+ print OVP "(MAPFONT D 2\n";
+ print OVP " (FONTNAME $kana_font)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ printf OVP " (FONTAT R %f)\n",$scale*$font_at;
+ printf OVP " (FONTDSIZE R %f)\n",$design_size;
+ print OVP " )\n";
+ }
+ }
+ if ($cid_minute == 1){
+ &get_face;
+ if ($direction eq "t"){
+ print OVP "(MAPFONT D 4\n";
+ print OVP " (FONTNAME $face"."1-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 5\n";
+ print OVP " (FONTNAME $face"."2-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }
+ elsif ($cid_quote == 1){
+ &get_face;
+ if ($direction eq "y"){
+ print OVP "(MAPFONT D 4\n";
+ print OVP " (FONTNAME $face"."0-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ elsif ($direction eq "t"){
+ print OVP "(MAPFONT D 4\n";
+ print OVP " (FONTNAME $face"."2-v)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }
+ if ($jis2004 == 1){
+ if($direction eq "y"){$temp_dir = "h"}elsif($direction eq "t"){$temp_dir = "v"}
+ &get_face;
+ print OVP "(MAPFONT D 4\n";
+ print OVP " (FONTNAME $face"."1-$temp_dir)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 5\n";
+ print OVP " (FONTNAME $face"."2-$temp_dir)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 6\n";
+ print OVP " (FONTNAME $face"."3-$temp_dir)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 7\n";
+ print OVP " (FONTNAME $face"."4-$temp_dir)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ print OVP "(MAPFONT D 8\n";
+ print OVP " (FONTNAME $face"."5-$temp_dir)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ if ($cid_hankana == 1){
+ &get_face;
+ if ($direction eq "y"){
+ print OVP "(MAPFONT D 6\n";
+ print OVP " (FONTNAME $face"."0-h)\n";
+ print OVP " (FONTCHECKSUM O 0)\n";
+ print OVP " (FONTAT R 1.0)\n";
+ print OVP " (FONTDSIZE R 10.0)\n";
+ print OVP " )\n";
+ }
+ }
+}
+sub write_char {
+ if (!$ucs) {
+ for ($ku=1; $ku<=$max_ku; $ku++){
+ for ($ten=1; $ten<=94; $ten++){
+ $jiscode=($ku+32)*256+($ten+32);
+ $CheckDVICode::dvicode=$dvicode=$jiscode;
+ if($sjis == 1){
+ &get_shift_jiscode;
+ $char_code=$shift_jiscode;
+ }else{
+ $char_code=$jiscode;
+ }
+ if ($ruby==1){
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_ruby_hira_char;}
+ elsif($ku==5){&print_ruby_kata_char;}else{&print_char;}
+ }elsif ($expert==1){
+ if ($direction eq "y"){
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&exp_hira_h_char;}
+ elsif($ku==5){&exp_kata_h_char;}else{&print_char;}
+ }elsif ($direction eq "t"){
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&exp_hira_v_char;}
+ elsif($ku==5){&exp_kata_v_char;}else{&print_char;}
+ }
+ }else{
+ if ($ku==1){&print_kigo_char;}elsif($ku==4){&print_kana_char;}
+ elsif($ku==5){&print_kana_char;}else{&print_char;}
+ }
+ }
+ }
+ } else { # ucs
+ $max_ucs= $sp ? 0x2FA1F : 0xFFFF; # U+2FA1F: max of CJK Compatibility Ideographs Supplement
+ for ($ucscode=0; $ucscode<=$max_ucs; $ucscode++){
+ $CheckDVICode::dvicode=$dvicode=$ucscode;
+ $char_code=$ucscode;
+ next unless (&is_ucs_jpn_range);
+ if ($sp==1 && $ucscode>0xFFFF) {
+ next unless ($exist_char{sprintf("%X",$ucscode)});
+ }
+ if(&is_ucs_hankana && $direction eq "y"){
+ &print_hankana_char;
+ next;
+ }
+ if ($ruby==1){
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira){&print_ruby_hira_char;}
+ elsif(&is_ucs_kata){&print_ruby_kata_char;}
+ else{&print_char;}
+ }elsif ($expert==1){
+ if ($direction eq "y"){
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira){&exp_hira_h_char;}
+ elsif(&is_ucs_kata){&exp_kata_h_char;}
+ else{&print_char;}
+ }elsif ($direction eq "t"){
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira){&exp_hira_v_char;}
+ elsif(&is_ucs_kata){&exp_kata_v_char;}
+ else{&print_char;}
+ }
+ }else{
+ if (&is_ucs_kigo){&print_kigo_char;}
+ elsif(&is_ucs_hira){&print_kana_char;}
+ elsif(&is_ucs_kata){&print_kana_char;}
+ else{&print_char;}
+ }
+ }
+ }
+}
+sub make_vf {
+ my ($ovp2ovf);
+
+ close(OVP);
+ exit if $debug_mode;
+
+ $ovp2ovf = 'ovp2ovf'; # use ovp2ovf WEB version in TeXLive svn r24922 or later if you use SP
+ if (defined($ENV{'OVP2OVF'})) {
+ $ovp2ovf = $ENV{'OVP2OVF'};
+ }
+ if ($ovp2ovf_command ne '') {
+ $ovp2ovf = $ovp2ovf_command;
+ }
+ system("$ovp2ovf $tfm_name.ovp $tfm_name.vf $tfm_name.ofm");
+ unlink "$tfm_name.ovp";
+ unlink "$tfm_name.ofm";
+}
+sub make_tfm {
+ open(KANJITFM,">$kanji_font.tfm") || die "Can't make \'$kanji_font.tfm\'!\n";
+ binmode(KANJITFM);
+ if ($direction eq "y") {
+ my (@tfm) = $ucs ? @yoko_ucs_tfm_binary : @yoko_tfm_binary;
+ foreach $binary(@tfm) {
+ $_ = pack("C", $binary);
+ print KANJITFM "$_";
+ }
+ } elsif ($direction eq "t") {
+ foreach $binary(@tate_tfm_binary) {
+ $_ = pack("C", $binary);
+ print KANJITFM "$_";
+ }
+ } else {die "Unknown Direction!!\n";}
+ if ($ruby==0 && $expert==0){
+ if ($kana_font ne ""){
+ open(KANATFM,">$kana_font.tfm") || die "Can't make \'$kana_font.tfm\'!\n";
+ binmode(KANATFM);
+ if ($direction eq "y") {
+ foreach $binary(@yoko_tfm_binary) {
+ $_ = pack("C", $binary);
+ print KANATFM "$_";
+ }
+ } else {
+ foreach $binary(@tate_tfm_binary) {
+ $_ = pack("C", $binary);
+ print KANATFM "$_";
+ }
+ }
+ }
+ }
+}
+##############################
+#### dfn of sub sub rtns ###
+##############################
+sub print_help {
+ print "This is umkjvf version 0.14 (2014/3/22) by ttk\n";
+ print "Based on mkjvf version 1.0b21 (2010/3/25) by psitau\n";
+ print "Usage: umkjvf [option] <TFMfile> <PSfontTFM> [<PSfontTFM>]\n";
+ print " -b <number> baseline shift\n";
+ print " -m translate quotation mark to minute\n";
+ print " -cm translate quotation mark to CID minute\n";
+ print " -cq translate quotation mark to CID quotation (umkjvf extention)\n";
+ print " -cp translate comma & period to KuTohTen\n";
+ print " -chk translate hankaku kana to CID hankaku kana (umkjvf extention)\n";
+ print " -notfm (h|v) don't read tfm\n";
+ print " -ruby use ruby glyph for kana (for utf package)\n";
+ print " -expert use alt. kana glyph for kana (for utf package)\n";
+ print " -burasage make the width of kutoh-ten zero for burasage\n";
+ print " -jp04 make a font mapped JIS X 0213:2004 glyphs\n";
+ print " -ucs make ucs mapped vf (umkjvf extention)\n";
+ print " -sp <0--2> include supplemental plane (umkjvf extention)\n";
+ print " -SJIS make shift jis mapped vf (experimental)\n";
+ print " -scale <0--1> make kokana vf\n";
+ print " -ovp2ovf <command> use ovp2ovf command\n";
+ print " -dbg debug mode\n";
+ print " -help print this message\n";
+ exit;
+}
+sub GetOptions {
+ my ($argv,@options)=@_;
+ foreach (@options) {
+ my ($regex,$ref,$takesarg)=@{$_};
+ my @args=@{$argv};
+ @{$argv}=();
+ my $arg;
+ argloop:
+ while (($arg=shift @args) ne "") {
+ if ($arg=~/$regex/) {
+ my $val=1;
+ if ($takesarg) { $val=shift @args; }
+ if (ref($ref) eq 'CODE') { &$ref($val); }
+ else { ${$ref}=$val; last argloop;}
+ }
+ else {
+ push @{$argv},$arg;
+ if ($arg eq '--') { last argloop; }
+ }
+ }
+ push @{$argv},@args;
+ }
+}
+sub get_metric{
+ if ($without_tfm eq ""){
+ &read_tfm;
+ } elsif ($without_tfm eq "h") {
+ $direction="y";
+ $design_size=10;
+ $font_at = 0.962216;
+ if ($minute_option == 1){$minute_option = 0;}
+ if ($comma_period == 1){$comma_period = 0;}
+ } elsif ($without_tfm eq "v") {
+ $direction="t";
+ $design_size=10;
+ $font_at = 0.962216;
+ } else{
+ die "Unknown Direction!!\n";
+ }
+# print STDOUT "$design_size, $font_at\n";#debug
+}
+sub read_tfm{
+ $alt_tfm_name=`kpsewhich $tfm_name.tfm`;
+ chomp($alt_tfm_name);
+ open (TFM, "<$tfm_name.tfm") || open (TFM, "<tfm/$tfm_name.tfm") || open (TFM, "<$alt_tfm_name") || die "Can't read tfm file!!\n";
+ binmode(TFM);
+ my($jfm_id, $nt, $lf, $lh, $bc, $ec, $nw, $nh, $nd, $ni, $nl, $nk, $ng, $np);
+ my($data,$d_size,$data_length, @param);
+ #first 7 word
+ read(TFM, $_, 2);
+ $jfm_id = unpack('n', $_);
+# printf STDOUT "JFM ID= %d\n",$jfm_id;#debug
+ if ($jfm_id==0x0B) {
+ $direction="y";
+ if ($minute_option == 1){$minute_option = 0;}
+# print STDOUT "Direction is YOKO!!\n";#debug
+ }elsif ($jfm_id==0x09){
+ $direction="t";
+# print STDOUT "Direction is TATE!!\n";#debug
+ }else{
+ die "Unknown Direction!!\n";
+ }
+ read(TFM, $_, 26);
+ ($nt, $lf, $lh, $bc, $ec, $nw, $nh, $nd, $ni, $nl, $nk, $ng, $np)= unpack('nnnnnnnnnnnnn', $_);
+ #header
+ read(TFM, $_, (4*$lh));
+ ($data,$d_size)= unpack('NN',$_);
+ $d_size=$d_size/(1<<20);;
+ $data_length = ($nt+$ec-$bc+1+$nw+$nh+$nd+$ni+$nl+$nk+$ng)*4;
+ read(TFM, $_, $data_length);
+ read(TFM, $_, (4*$np));
+ @param=unpack('NNNNNNNNN',$_);
+ $zh = $param[4]/(1<<20);
+ $zw = $param[5]/(1<<20);
+ $design_size=$d_size;
+ $font_at=$zw;
+# printf STDOUT "Design Size: %f, zw: %f, zh: %f\n",$d_size, $zw, $zh;#debug
+}
+sub get_face{
+ if($kana_font eq "cidjminr"){
+ $face="cidjmr";
+ }elsif($kana_font eq "cidjgothr"){
+ $face="cidjgr";
+ }elsif($kana_font eq "cidjminb"){
+ $face="cidjmb";
+ }elsif($kana_font eq "cidjgothb"){
+ $face="cidjgb";
+ }elsif($kana_font eq "cidjmgothr"){
+ $face="cidjmgr";
+ }elsif($kana_font eq "cidjminl"){
+ $face="cidjml";
+ }elsif($kana_font eq "cidjgotheb"){
+ $face="cidjge";
+ }elsif($kana_font eq "cidmin"){
+ $face="cidm";
+ }elsif($kana_font eq "cidgoth"){
+ $face="cidg";
+ }elsif($kana_font eq ""){
+ if($kanji_font =~ /hminr/){
+ $face="cidjmr";
+ }elsif($kanji_font =~ /hgothr/){
+ $face="cidjgr";
+ }elsif($kanji_font =~ /hminb/){
+ $face="cidjmb";
+ }elsif($kanji_font =~ /hgothb/){
+ $face="cidjgb";
+ }elsif($kanji_font =~ /hmgothr/){
+ $face="cidjmgr";
+ }elsif($kanji_font =~ /hminl/){
+ $face="cidjml";
+ }elsif($kanji_font =~ /hgotheb/){
+ $face="cidjge";
+ }
+ }
+}
+sub baseline_shift{
+ if ($baseline_shift != 0){
+ $baseline_shift_amount=-($baseline_shift/1000)*$zh;
+ printf OVP " (MOVEUP R %f)\n",$baseline_shift_amount;
+ }
+}
+sub print_kigo_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ if (&is_dvicode('quote') || &is_dvicode('kakko')){#Kakko
+ $width=$half_width;
+ } elsif (&is_dvicode('kutouten')){#Kutouten
+ if (($burasage eq 1) && &is_dvicode('burasage')){#burasage
+ $width=0;
+ }else{
+ $width=$half_width;
+ }
+ } else{
+ $width=$font_at;
+ }
+ printf OVP " (CHARWD R %f)\n", $width;
+ print OVP " (MAP\n";
+ if (&is_dvicode('odoriji')){#odoriji
+ if ($ruby==1){
+ print OVP " (SELECTFONT D 2)\n";
+ }elsif($expert==1){
+ if ($direction eq "y"){
+ if (&is_dvicode('hira-odoriji')){
+ print OVP " (SELECTFONT D 2)\n";
+ }else{
+ print OVP " (SELECTFONT D 3)\n";
+ }
+ }else{
+ print OVP " (SELECTFONT D 2)\n";
+ }
+ }elsif($kana_font ne ""){
+ print OVP " (SELECTFONT D 2)\n";
+ }
+ }
+ if ($cid_minute == 1){#cid_minute
+ if (&is_dvicode('d-quote')){#double quatation->double minute
+ print OVP " (SELECTFONT D 4)\n";
+ }elsif (&is_dvicode('s-quote')){#single quatation->single minute
+ print OVP " (SELECTFONT D 5)\n";
+ }
+ }
+ elsif ($cid_quote == 1){#cid_quote
+ if (&is_dvicode('quote')){
+ print OVP " (SELECTFONT D 4)\n";
+ }
+ }
+ &baseline_shift;
+ if (&is_dvicode('odoriji')){#odoriji
+ &scaled_shift;
+ }
+ if (&is_dvicode('colon') || &is_dvicode('semicolon') || &is_dvicode('nakaten')){#colon, semicolon, nakaten
+ printf OVP " (MOVERIGHT R -%f)\n",$quater_width;}
+ if (&is_dvicode('kakko') && &is_dvicode('open')){#Kakko
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ if (&is_dvicode('quote')){#quatation
+ if ($minute_option == 1){#quatation -> minute
+ if ($cid_minute == 1){
+ if (&is_dvicode('open')){
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ $minute_char_code= shift(@cid_minute_code);
+ printf OVP " (SETCHAR H %X)\n", $minute_char_code;
+ }else{
+ $minute_right_shift= shift(@minute_right);
+ $minute_down_shift= shift(@minute_down);
+ printf OVP " (MOVERIGHT R %f)\n", $minute_right_shift;
+ printf OVP " (MOVEDOWN R %f)\n", $minute_down_shift;
+ if (&is_dvicode('close')){
+ print OVP " (SPECIAL ps: gsave currentpoint currentpoint translate 180 neg rotate neg exch neg exch translate)\n";
+ }
+ if ($sjis == 1){
+ $minute_char_code= shift(@shift_minute_code);
+ }else{
+ $minute_char_code= shift(@minute_code);
+ }
+ printf OVP " (SETCHAR H %X)\n", $minute_char_code;
+ if (&is_dvicode('close')){
+ print OVP " (SPECIAL ps: currentpoint grestore moveto)\n";
+ }
+ }
+ } elsif ($cid_quote == 1){
+ if (&is_dvicode('open')){
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ if ($direction eq "y"){
+ $quote_char_code= shift(@cid_hquote_code);
+ }else{
+ $quote_char_code= shift(@cid_vquote_code);
+ }
+ printf OVP " (SETCHAR H %X)\n", $quote_char_code;
+ } else {
+ if (&is_dvicode('open')){
+ printf OVP " (MOVERIGHT R -%f)\n",$half_width;
+ }
+ printf OVP " (SETCHAR H %X)\n", $char_code;
+ }
+ } elsif (&is_dvicode('odoriji')){#odoriji
+ if ($ruby==1){
+ if ($direction eq "y"){
+ $odorijicode= shift(@ruby_odori_h);
+ }else{
+ $odorijicode= shift(@ruby_odori_v);
+ }
+ }elsif($expert==1){
+ if ($direction eq "y"){
+ $odorijicode= shift(@exp_odori_h);
+ }else{
+ $odorijicode= shift(@exp_odori_v);
+ }
+ }elsif ($sjis==1){
+ $odorijicode= $shift_jiscode;
+ }else{
+ $odorijicode= $dvicode;
+ }
+ printf OVP " (SETCHAR H %X)\n",$odorijicode;
+ } elsif (&is_dvicode('comma') && $comma_period == 1){
+ printf OVP " (SETCHAR H %X)\n", ($ucs ? 0x3001 : $char_code-2);
+ } elsif (&is_dvicode('period') && $comma_period == 1){
+ printf OVP " (SETCHAR H %X)\n", ($ucs ? 0x3002 : $char_code-2);
+ }else {
+ printf OVP " (SETCHAR H %X)\n",$char_code;
+ }
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $font_at;
+ print OVP " (MAP\n";
+ if (($jis2004 == 1) && (0x3029 <= $jiscode && $jiscode <= 0x726D)){
+ if (exists $kaisei_jikei{$jiscode}){
+ $cid = $kaisei_jikei{$jiscode};
+ $fontmap = int($cid/4096)+3;
+ printf OVP " (SELECTFONT D %d)\n", $fontmap;
+ $upper = int(($cid%4096)/64)+16;
+ $lower = (($cid%4096)%64)+16;
+# printf STDOUT "%d, %d\n",$upper,$lower;
+ $char_code = $upper*256+$lower+0x2020;
+ }
+ }
+ &baseline_shift;
+ printf OVP " (SETCHAR H %X)\n",$char_code;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_kana_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $font_at;
+ print OVP " (MAP\n";
+ if ($kana_font ne ""){
+ print OVP " (SELECTFONT D 2)\n";
+ }
+ &baseline_shift;
+ &scaled_shift;
+ printf OVP " (SETCHAR H %X)\n",$char_code;
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_hankana_char{
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n", $font_at/2.0;
+ print OVP " (MAP\n";
+ if ($cid_hankana == 1){
+ print OVP " (SELECTFONT D 6)\n";
+ }
+ &baseline_shift;
+ &scaled_shift;
+ if ($cid_hankana == 1){
+ $hkana_char_code= shift(@cid_hkana_code);
+ printf OVP " (SETCHAR H %X)\n",$hkana_char_code;
+ } else {
+ printf OVP " (SETCHAR H %X)\n",$char_code;
+ }
+ print OVP " )\n";
+ print OVP " )\n";
+}
+sub print_ruby_hira_char{
+ if (&is_dvicode('hira-Vu')){$ruby_hira_code=0x3744;}
+ if (&is_dvicode('hira-ka')){$ruby_hira_code=0x363A;}
+ if (&is_dvicode('hira-ke')){$ruby_hira_code=0x3641;}
+ $ruby_hira_code_orig=$ruby_hira_code;
+ if ($direction eq "t"){&fix_ruby_hira_code;}
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SELECTFONT D %d)\n",$ruby_font_map;
+ &baseline_shift;
+ printf OVP " (SETCHAR H %X)\n", $ruby_hira_code;
+ print OVP " )\n";
+ print OVP " )\n";
+ $ruby_hira_code=$ruby_hira_code_orig;
+ $ruby_hira_code++;
+ if ($ruby_hira_code == 0x3570){$ruby_hira_code=0x3630;}
+ if ($ruby_hira_code == 0x3670){$ruby_hira_code=0x3730;}
+ if ($ruby_hira_code == 0x363A){$ruby_hira_code=0x363B;}
+ if ($ruby_hira_code == 0x3641){$ruby_hira_code=0x3642;}
+}
+sub print_ruby_kata_char{
+ $ruby_kata_code_orig=$ruby_kata_code;
+ if (&is_dvicode('kata-ka')){$ruby_kata_code=0x375C;}
+ if (&is_dvicode('kata-ke')){$ruby_kata_code=0x3763;}
+ if (&is_dvicode('kata-Va')){$ruby_kata_code_orig=$ruby_kata_code=0x306C;
+ $ruby_font_map=3;} # JIS X 0213
+ if (&is_dvicode('kata-ku')){$ruby_kata_code_orig=$ruby_kata_code=0x305B;} # JIS X 0213
+ if (&is_dvicode('kata-mu')){$ruby_kata_code_orig=$ruby_kata_code=0x3066;} # JIS X 0213
+ if ($direction eq "t"){&fix_ruby_kata_code;}
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SELECTFONT D %d)\n",$ruby_font_map;
+ &baseline_shift;
+ printf OVP " (SETCHAR H %X)\n", $ruby_kata_code;
+ print OVP " )\n";
+ print OVP " )\n";
+ $ruby_kata_code=$ruby_kata_code_orig;
+ $ruby_kata_code++;
+ if ($ruby_kata_code == 0x3770){$ruby_kata_code=0x3830;}
+ if ($ruby_kata_code == 0x375C){$ruby_kata_code=0x375D;}
+ if ($ruby_kata_code == 0x3763){$ruby_kata_code=0x3764;}
+}
+sub exp_hira_h_char{
+ if (&is_dvicode('hira-Vu')){$exp_hira_code_h=0x3139;$exp_font_map=3;} # JIS X 0213
+ if (&is_dvicode('hira-ka')){$exp_hira_code_h=0x6f6d;$exp_font_map=2;} # JIS X 0213
+ if (&is_dvicode('hira-ke')){$exp_hira_code_h=0x3034;$exp_font_map=3;} # JIS X 0213
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
+ &baseline_shift;
+ &scaled_shift;
+ printf OVP " (SETCHAR H %X)\n", $exp_hira_code_h;
+ print OVP " )\n";
+ print OVP " )\n";
+ $exp_hira_code_h++;
+ if ($exp_hira_code_h == 0x6F70){$exp_hira_code_h=0x3030;$exp_font_map=3;}
+ if ($exp_hira_code_h == 0x3070){$exp_hira_code_h=0x3130;}
+ if ($exp_hira_code_h == 0x6f6d){$exp_hira_code_h++;}
+ if ($exp_hira_code_h == 0x3034){$exp_hira_code_h++;}
+ if ($exp_hira_code_h == 0x3037){$exp_hira_code_h++;}
+}
+sub exp_kata_h_char{
+ if (&is_dvicode('kata-ka')){$exp_kata_code_h=0x3147;}
+ if (&is_dvicode('kata-ke')){$exp_kata_code_h=0x314e;}
+ if (&is_dvicode('kata-Va')){$exp_kata_code_h=0x3254;} # JIS X 0213
+ if (&is_dvicode('kata-ku')){$exp_kata_code_h=0x6f5d;} # JIS X 0213
+ if (&is_dvicode('kata-mu')){$exp_kata_code_h=0x6f68;} # JIS X 0213
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ print OVP " (SELECTFONT D 3)\n";
+ &baseline_shift;
+ &scaled_shift;
+ printf OVP " (SETCHAR H %X)\n", $exp_kata_code_h;
+ print OVP " )\n";
+ print OVP " )\n";
+ $exp_kata_code_h++;
+ if ($exp_kata_code_h == 0x3170){$exp_kata_code_h=0x3230;}
+ if ($exp_kata_code_h == 0x3147){$exp_kata_code_h++;}
+ if ($exp_kata_code_h == 0x314e){$exp_kata_code_h++;}
+ if ($exp_kata_code_h == 0x3151){$exp_kata_code_h++;}
+}
+sub exp_hira_v_char{
+ if (&is_dvicode('hira-Vu')){$exp_hira_code_v=0x3430;$exp_font_map=2;} # JIS X 0213
+ if (&is_dvicode('hira-ka')){$exp_hira_code_v=0x3264;$exp_font_map=2;} # JIS X 0213
+ if (&is_dvicode('hira-ke')){$exp_hira_code_v=0x326b;$exp_font_map=2;} # JIS X 0213
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
+ &baseline_shift;
+ &scaled_shift;
+ printf OVP " (SETCHAR H %X)\n", $exp_hira_code_v;
+ print OVP " )\n";
+ print OVP " )\n";
+ $exp_hira_code_v++;
+ if ($exp_hira_code_v == 0x3270){$exp_hira_code_v=0x3330;}
+ if ($exp_hira_code_v == 0x3264){$exp_hira_code_v++;}
+ if ($exp_hira_code_v == 0x326b){$exp_hira_code_v++;}
+ if ($exp_hira_code_v == 0x326e){$exp_hira_code_v++;}
+}
+sub exp_kata_v_char{
+ if (&is_dvicode('kata-ka')){$exp_kata_code_v=0x343e;}
+ if (&is_dvicode('kata-ke')){$exp_kata_code_v=0x3445;}
+ if (&is_dvicode('kata-Va')){$exp_kata_code_v=0x354b;} # JIS X 0213
+ if (&is_dvicode('kata-ku')){$exp_kata_code_v=0x303b;$exp_font_map=3;} # JIS X 0213
+ if (&is_dvicode('kata-mu')){$exp_kata_code_v=0x3046;} # JIS X 0213
+ printf OVP "(CHARACTER H %X\n", $dvicode;
+ printf OVP " (CHARWD R %f)\n",$font_at;
+ print OVP " (MAP\n";
+ printf OVP " (SELECTFONT D %d)\n", $exp_font_map;
+ &baseline_shift;
+ &scaled_shift;
+ printf OVP " (SETCHAR H %X)\n", $exp_kata_code_v;
+ print OVP " )\n";
+ print OVP " )\n";
+ $exp_kata_code_v++;
+ if ($exp_kata_code_v == 0x3470){$exp_kata_code_v=0x3530;}
+ if ($exp_kata_code_v == 0x343e){$exp_kata_code_v++;}
+ if ($exp_kata_code_v == 0x3445){$exp_kata_code_v++;}
+ if ($exp_kata_code_v == 0x3448){$exp_kata_code_v++;}
+}
+sub fix_ruby_hira_code{
+ if (&is_dvicode('hira-a' )){$ruby_hira_code=0x3745;}#a
+ if (&is_dvicode('hira-i' )){$ruby_hira_code=0x3746;}#i
+ if (&is_dvicode('hira-u' )){$ruby_hira_code=0x3747;}#u
+ if (&is_dvicode('hira-e' )){$ruby_hira_code=0x3748;}#e
+ if (&is_dvicode('hira-o' )){$ruby_hira_code=0x3749;}#o
+ if (&is_dvicode('hira-tsu')){$ruby_hira_code=0x374c;}#tsu
+ if (&is_dvicode('hira-ya' )){$ruby_hira_code=0x374d;}#ya
+ if (&is_dvicode('hira-yu' )){$ruby_hira_code=0x374e;}#yu
+ if (&is_dvicode('hira-yo' )){$ruby_hira_code=0x374f;}#yo
+ if (&is_dvicode('hira-wa' )){$ruby_hira_code=0x3750;}#wa
+ if (&is_dvicode('hira-ka' )){$ruby_hira_code=0x374a;} # JIS X 0213
+ if (&is_dvicode('hira-ke' )){$ruby_hira_code=0x374b;} # JIS X 0213
+}
+sub fix_ruby_kata_code{
+ if (&is_dvicode('kata-a' )){$ruby_kata_code=0x3867;}#a
+ if (&is_dvicode('kata-i' )){$ruby_kata_code=0x3868;}#i
+ if (&is_dvicode('kata-u' )){$ruby_kata_code=0x3869;}#u
+ if (&is_dvicode('kata-e' )){$ruby_kata_code=0x386a;}#e
+ if (&is_dvicode('kata-o' )){$ruby_kata_code=0x386b;}#o
+ if (&is_dvicode('kata-tsu')){$ruby_kata_code=0x386e;}#tsu
+ if (&is_dvicode('kata-ya' )){$ruby_kata_code=0x386f;}#ya
+ if (&is_dvicode('kata-yu' )){$ruby_kata_code=0x3930;}#yu
+ if (&is_dvicode('kata-yo' )){$ruby_kata_code=0x3931;}#yo
+ if (&is_dvicode('kata-wa' )){$ruby_kata_code=0x3932;}#wa
+ if (&is_dvicode('kata-ka' )){$ruby_kata_code=0x386c;}#ka
+ if (&is_dvicode('kata-ke' )){$ruby_kata_code=0x386d;}#ke
+ if (&is_dvicode('kata-ku..ro')){$ruby_kata_code+=215;} # JIS X 0213
+}
+sub get_shift_jiscode{
+ $c1=$ku+32;
+ $c2=$ten+32;
+ if ($c1 % 2) {
+ $c1 = (($c1 + 1) / 2) + 0x70;
+ $c2 = $c2 + 0x1f;
+ } else {
+ $c1 = ($c1 / 2) + 0x70;
+ $c2 = $c2 + 0x7d;
+ }
+ if ($c1 >= 0xa0) {$c1 = $c1 + 0x40;}
+ if ($c2 >= 0x7f) {$c2 = $c2 + 1;}
+ $shift_jiscode=$c1*256+$c2;
+}
+sub scaled_shift{
+ if ($scale != 1){
+ $scaled_shift_amount=(1-$scale)*$font_at/2;
+ printf OVP " (MOVERIGHT R %f)\n",$scaled_shift_amount;
+ if ($direction eq "y"){
+ $scaled_v_shift_amount=(1-$scale)*$font_at*0.38;
+ printf OVP " (MOVEUP R %f)\n",$scaled_v_shift_amount;
+ }
+ }
+}
+
+
+__END__
+0xFF5F: JIS X 0213 1-02-54 FULLWIDTH LEFT WHITE PARENTHESIS 始め二重バーレーン
+0x3018: JIS X 0213 1-02-56 LEFT WHITE TORTOISE SHELL BRACKET 始め二重亀甲括弧
+0x3016: JIS X 0213 1-02-58 LEFT WHITE LENTICULAR BRACKET 始めすみ付き括弧(白)
+0x301D: JIS X 0213 1-13-64 REVERSED DOUBLE PRIME QUOTATION MARK 始めダブルミニュート
+0xFF60: JIS X 0213 1-02-55 FULLWIDTH RIGHT WHITE PARENTHESIS 終わり二重バーレーン
+0x3019: JIS X 0213 1-02-57 RIGHT WHITE TORTOISE SHELL BRACKET 終わり二重亀甲括弧
+0x3017: JIS X 0213 1-02-59 RIGHT WHITE LENTICULAR BRACKET 終わりすみ付き括弧(白)
+0x301F: JIS X 0213 1-13-65 LOW DOUBLE PRIME QUOTATION MARK 終わりダブルミニュート
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-h.vf
new file mode 100644
index 0000000000..f293f4fab9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-v.vf
new file mode 100644
index 0000000000..9037e9972a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-h.vf
new file mode 100644
index 0000000000..f7fdb25b09
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-v.vf
new file mode 100644
index 0000000000..eb9e021a91
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-h.vf
new file mode 100644
index 0000000000..ba3965eee8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-v.vf
new file mode 100644
index 0000000000..197836b0ff
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgotheb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-h.vf
new file mode 100644
index 0000000000..6d4f79fb30
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-v.vf
new file mode 100644
index 0000000000..37bbe5d717
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothebn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-h.vf
new file mode 100644
index 0000000000..8db83512c3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-v.vf
new file mode 100644
index 0000000000..0b8aa2b4d3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-h.vf
new file mode 100644
index 0000000000..7e84fe65cb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-v.vf
new file mode 100644
index 0000000000..76219bfb30
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-h.vf
new file mode 100644
index 0000000000..43aa2c1719
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-v.vf
new file mode 100644
index 0000000000..25aecc6b9e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-h.vf
new file mode 100644
index 0000000000..6139b2a18f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-v.vf
new file mode 100644
index 0000000000..42ee230313
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpmgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-h.vf
new file mode 100644
index 0000000000..a781d8ba37
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-v.vf
new file mode 100644
index 0000000000..f597da0cf3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-h.vf
new file mode 100644
index 0000000000..f658b524d4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-v.vf
new file mode 100644
index 0000000000..b7d041aaef
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-h.vf
new file mode 100644
index 0000000000..12a9d18f97
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-v.vf
new file mode 100644
index 0000000000..dbdb250d5c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-h.vf
new file mode 100644
index 0000000000..e7d6f4bb89
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-v.vf
new file mode 100644
index 0000000000..d815fb2c40
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminln-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-h.vf
new file mode 100644
index 0000000000..f3f1061557
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-v.vf
new file mode 100644
index 0000000000..462c9eb20b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-h.vf
new file mode 100644
index 0000000000..c097b7daea
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-v.vf
new file mode 100644
index 0000000000..38c7dd3ade
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgexpminrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-h.vf
new file mode 100644
index 0000000000..3d75a4d1b1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-v.vf
new file mode 100644
index 0000000000..aec0690d7a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-h.vf
new file mode 100644
index 0000000000..12a762b633
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-v.vf
new file mode 100644
index 0000000000..7f6078f688
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-h.vf
new file mode 100644
index 0000000000..5a239c6964
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-v.vf
new file mode 100644
index 0000000000..b21f6c74ee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgotheb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-h.vf
new file mode 100644
index 0000000000..13c465266d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-v.vf
new file mode 100644
index 0000000000..37129bbaad
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothebn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-h.vf
new file mode 100644
index 0000000000..f1a323829c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-v.vf
new file mode 100644
index 0000000000..f52deab8e9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-h.vf
new file mode 100644
index 0000000000..9b35bebccd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-v.vf
new file mode 100644
index 0000000000..e88b55c8e0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-h.vf
new file mode 100644
index 0000000000..12860e0c83
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-v.vf
new file mode 100644
index 0000000000..e41f629648
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-h.vf
new file mode 100644
index 0000000000..6355fa441a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-v.vf
new file mode 100644
index 0000000000..0fd9a900b7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlmgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-h.vf
new file mode 100644
index 0000000000..e6dfd064e0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-v.vf
new file mode 100644
index 0000000000..ea8d985498
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-h.vf
new file mode 100644
index 0000000000..5602305b05
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-v.vf
new file mode 100644
index 0000000000..44cd873eb0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-h.vf
new file mode 100644
index 0000000000..dd3d3d96be
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-v.vf
new file mode 100644
index 0000000000..2344536dcb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-h.vf
new file mode 100644
index 0000000000..503377083b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-v.vf
new file mode 100644
index 0000000000..5861167655
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminln-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-h.vf
new file mode 100644
index 0000000000..5fbe95603f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-v.vf
new file mode 100644
index 0000000000..abfae1c648
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-h.vf
new file mode 100644
index 0000000000..22952ef075
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-v.vf
new file mode 100644
index 0000000000..9b28a51994
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upbrsgnmlminrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothb-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothb-h.vf
new file mode 100644
index 0000000000..b1ffb25cf7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothb-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothb-v.vf
new file mode 100644
index 0000000000..81873330db
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothbn-h.vf
new file mode 100644
index 0000000000..6628c834cc
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothbn-v.vf
new file mode 100644
index 0000000000..622dc47e38
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgotheb-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgotheb-h.vf
new file mode 100644
index 0000000000..c67dc486e3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgotheb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgotheb-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgotheb-v.vf
new file mode 100644
index 0000000000..36d913cbf8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgotheb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothebn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothebn-h.vf
new file mode 100644
index 0000000000..3f8f857f9c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothebn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothebn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothebn-v.vf
new file mode 100644
index 0000000000..6ca834a541
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothebn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothr-h.vf
new file mode 100644
index 0000000000..331a7d436d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothr-v.vf
new file mode 100644
index 0000000000..f0aeb5ced3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothrn-h.vf
new file mode 100644
index 0000000000..11e331b479
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpgothrn-v.vf
new file mode 100644
index 0000000000..5678c1d276
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpmgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpmgothr-h.vf
new file mode 100644
index 0000000000..018ddc5048
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpmgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpmgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpmgothr-v.vf
new file mode 100644
index 0000000000..22086d1250
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpmgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-h.vf
new file mode 100644
index 0000000000..c92e29b737
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-v.vf
new file mode 100644
index 0000000000..1d853c40d2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpmgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminb-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminb-h.vf
new file mode 100644
index 0000000000..77efae0b24
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminb-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminb-v.vf
new file mode 100644
index 0000000000..686401b92d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminbn-h.vf
new file mode 100644
index 0000000000..0b98dd15b0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminbn-v.vf
new file mode 100644
index 0000000000..f0b34e66c1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminl-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminl-h.vf
new file mode 100644
index 0000000000..4350335eba
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminl-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminl-v.vf
new file mode 100644
index 0000000000..03e3b49fb4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminln-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminln-h.vf
new file mode 100644
index 0000000000..c6140c5bf8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminln-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminln-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminln-v.vf
new file mode 100644
index 0000000000..d253c3ff09
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminln-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminr-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminr-h.vf
new file mode 100644
index 0000000000..2101db2ce1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminr-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminr-v.vf
new file mode 100644
index 0000000000..e052e2750c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upexpminrn-h.vf
new file mode 100644
index 0000000000..fc1fc2a594
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upexpminrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upexpminrn-v.vf
new file mode 100644
index 0000000000..8b536c18f8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upexpminrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothb-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothb-h.vf
new file mode 100644
index 0000000000..786b4d0f68
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothb-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothb-v.vf
new file mode 100644
index 0000000000..78abecf1fb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-h.vf
new file mode 100644
index 0000000000..3b9e9559a4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-v.vf
new file mode 100644
index 0000000000..4d080648ee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-h.vf
new file mode 100644
index 0000000000..cd3f97fd5e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-v.vf
new file mode 100644
index 0000000000..42bf0cfca4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgotheb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-h.vf
new file mode 100644
index 0000000000..2aaec28601
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-v.vf
new file mode 100644
index 0000000000..6aede6f574
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothebn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothr-h.vf
new file mode 100644
index 0000000000..9b6c08570a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothr-v.vf
new file mode 100644
index 0000000000..c2a71df996
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-h.vf
new file mode 100644
index 0000000000..22b1d95d20
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-v.vf
new file mode 100644
index 0000000000..423f65e9a9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-h.vf
new file mode 100644
index 0000000000..f131f68e7e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-v.vf
new file mode 100644
index 0000000000..1a68d04295
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlmgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-h.vf
new file mode 100644
index 0000000000..976344691c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-v.vf
new file mode 100644
index 0000000000..ae016f97f4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlmgothrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminb-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminb-h.vf
new file mode 100644
index 0000000000..8a4232250d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminb-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminb-v.vf
new file mode 100644
index 0000000000..c98d0691fa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminbn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminbn-h.vf
new file mode 100644
index 0000000000..2b0347363f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminbn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminbn-v.vf
new file mode 100644
index 0000000000..adee451a82
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminl-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminl-h.vf
new file mode 100644
index 0000000000..332e3ce480
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminl-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminl-v.vf
new file mode 100644
index 0000000000..19f571f3c4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminln-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminln-h.vf
new file mode 100644
index 0000000000..d985bcf35d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminln-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminln-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminln-v.vf
new file mode 100644
index 0000000000..f69f73dec4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminln-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminr-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminr-h.vf
new file mode 100644
index 0000000000..44e7c8fb0e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminr-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminr-v.vf
new file mode 100644
index 0000000000..bc9dbf1b86
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminrn-h.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminrn-h.vf
new file mode 100644
index 0000000000..2fc2f30dcd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/upnmlminrn-v.vf b/language/japanese/japanese-otf-uptex/vf/upnmlminrn-v.vf
new file mode 100644
index 0000000000..e151a801a2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/upnmlminrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygothb-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubygothb-h.vf
new file mode 100644
index 0000000000..d6819f2742
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygothb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygothb-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubygothb-v.vf
new file mode 100644
index 0000000000..7b2c6f00ea
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygothb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygotheb-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubygotheb-h.vf
new file mode 100644
index 0000000000..7f0157b6d4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygotheb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygotheb-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubygotheb-v.vf
new file mode 100644
index 0000000000..93b3a88786
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygotheb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygothr-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubygothr-h.vf
new file mode 100644
index 0000000000..d4e95ec8d9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubygothr-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubygothr-v.vf
new file mode 100644
index 0000000000..6ea78829b4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubygothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubymgothr-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubymgothr-h.vf
new file mode 100644
index 0000000000..e33e74eb12
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubymgothr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubymgothr-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubymgothr-v.vf
new file mode 100644
index 0000000000..437d7c6ada
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubymgothr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminb-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminb-h.vf
new file mode 100644
index 0000000000..acfb745b39
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminb-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminb-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminb-v.vf
new file mode 100644
index 0000000000..291bfe3d16
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminb-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminl-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminl-h.vf
new file mode 100644
index 0000000000..7f6369506b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminl-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminl-v.vf
new file mode 100644
index 0000000000..d99381a35c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminr-h.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminr-h.vf
new file mode 100644
index 0000000000..2eea1f7c11
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/uprubyminr-v.vf b/language/japanese/japanese-otf-uptex/vf/uprubyminr-v.vf
new file mode 100644
index 0000000000..8598e21931
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/uprubyminr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrk-h.vf
new file mode 100644
index 0000000000..8ae56ae5e3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrk-v.vf
new file mode 100644
index 0000000000..afb7e68758
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrl-h.vf
new file mode 100644
index 0000000000..6caf8f8335
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrl-v.vf
new file mode 100644
index 0000000000..fd799e8546
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrm-h.vf
new file mode 100644
index 0000000000..5c677a7a8f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcgrm-v.vf
new file mode 100644
index 0000000000..e2893c1a75
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcgro-h.vf
new file mode 100644
index 0000000000..07eab72c95
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcgro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcgro-v.vf
new file mode 100644
index 0000000000..d443cc0d85
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcgro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrk-h.vf
new file mode 100644
index 0000000000..2a394e6895
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrk-v.vf
new file mode 100644
index 0000000000..4752755ac9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrl-h.vf
new file mode 100644
index 0000000000..5c46f29124
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrl-v.vf
new file mode 100644
index 0000000000..0d2e7d4026
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrm-h.vf
new file mode 100644
index 0000000000..d14f22619c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcmrm-v.vf
new file mode 100644
index 0000000000..5e468d10c8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfcmro-h.vf
new file mode 100644
index 0000000000..589b67627b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfcmro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfcmro-v.vf
new file mode 100644
index 0000000000..b87e58b9e1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfcmro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrj-h.vf
new file mode 100644
index 0000000000..2456e34946
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrj-v.vf
new file mode 100644
index 0000000000..61234a1974
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrk-h.vf
new file mode 100644
index 0000000000..af719a0772
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrk-v.vf
new file mode 100644
index 0000000000..c3daed745b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrl-h.vf
new file mode 100644
index 0000000000..0a96b35a2a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrl-v.vf
new file mode 100644
index 0000000000..9794421c7d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrm-h.vf
new file mode 100644
index 0000000000..6371932f18
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrm-v.vf
new file mode 100644
index 0000000000..ab4780b2d4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrn-h.vf
new file mode 100644
index 0000000000..5668e5c4c1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrn-v.vf
new file mode 100644
index 0000000000..22ed269a08
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgro-h.vf
new file mode 100644
index 0000000000..7d74e4954c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgro-v.vf
new file mode 100644
index 0000000000..f1198712ed
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrp-h.vf
new file mode 100644
index 0000000000..cb21e8e019
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrp-v.vf
new file mode 100644
index 0000000000..86d783811c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrq-h.vf
new file mode 100644
index 0000000000..20481206d3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrq-v.vf
new file mode 100644
index 0000000000..6775cc4208
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrr-h.vf
new file mode 100644
index 0000000000..0c9e6b486a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrr-v.vf
new file mode 100644
index 0000000000..cf32c43403
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrs-h.vf
new file mode 100644
index 0000000000..3edb7faeac
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrs-v.vf
new file mode 100644
index 0000000000..4f8e4aa71e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrt-h.vf
new file mode 100644
index 0000000000..8e30ea8539
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrt-v.vf
new file mode 100644
index 0000000000..f18e4d2eee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgru-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgru-h.vf
new file mode 100644
index 0000000000..7d80de2665
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgru-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgru-v.vf
new file mode 100644
index 0000000000..108f1ba5c5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrv-h.vf
new file mode 100644
index 0000000000..fbda381b54
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrv-v.vf
new file mode 100644
index 0000000000..955e6936b7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrw-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrw-h.vf
new file mode 100644
index 0000000000..3d7f69b8b3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrw-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrw-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrw-v.vf
new file mode 100644
index 0000000000..d6ac632a4d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrw-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrx-h.vf
new file mode 100644
index 0000000000..b4fea3f362
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrx-v.vf
new file mode 100644
index 0000000000..46f8084da9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgry-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgry-h.vf
new file mode 100644
index 0000000000..6a0df6c138
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgry-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgry-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgry-v.vf
new file mode 100644
index 0000000000..ff1f2ff3aa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgry-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfgrz-h.vf
new file mode 100644
index 0000000000..ef0ba0eb77
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfgrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfgrz-v.vf
new file mode 100644
index 0000000000..00fe7954dc
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfgrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbj-h.vf
new file mode 100644
index 0000000000..90bd3a0fa4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbj-v.vf
new file mode 100644
index 0000000000..739e3531f3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbk-h.vf
new file mode 100644
index 0000000000..4bf9636ec3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbk-v.vf
new file mode 100644
index 0000000000..f1cd2aebe1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbl-h.vf
new file mode 100644
index 0000000000..0314af4473
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbl-v.vf
new file mode 100644
index 0000000000..515d3f8efd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbm-h.vf
new file mode 100644
index 0000000000..f48c50388f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbm-v.vf
new file mode 100644
index 0000000000..a09ba47bc8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbn-h.vf
new file mode 100644
index 0000000000..67fb661a8d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbn-v.vf
new file mode 100644
index 0000000000..1afe9bec06
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbo-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbo-h.vf
new file mode 100644
index 0000000000..4999586f85
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbo-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbo-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbo-v.vf
new file mode 100644
index 0000000000..a57cdbed1d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbo-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbp-h.vf
new file mode 100644
index 0000000000..2d12f9ea51
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbp-v.vf
new file mode 100644
index 0000000000..28950e29a0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbq-h.vf
new file mode 100644
index 0000000000..5f62399d82
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbq-v.vf
new file mode 100644
index 0000000000..cebd38f0e3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbr-h.vf
new file mode 100644
index 0000000000..efe3ca8173
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbr-v.vf
new file mode 100644
index 0000000000..47321cc697
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbs-h.vf
new file mode 100644
index 0000000000..7ffa5c5e3c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbs-v.vf
new file mode 100644
index 0000000000..f7778d45be
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbt-h.vf
new file mode 100644
index 0000000000..4a8c9aea13
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbt-v.vf
new file mode 100644
index 0000000000..d6adee3527
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbu-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbu-h.vf
new file mode 100644
index 0000000000..e317dc541c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbu-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbu-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbu-v.vf
new file mode 100644
index 0000000000..9b8ec2c2d1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbu-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbv-h.vf
new file mode 100644
index 0000000000..b51f99b11a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbv-v.vf
new file mode 100644
index 0000000000..5545a9aa9a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbx-h.vf
new file mode 100644
index 0000000000..7dcfc347ba
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbx-v.vf
new file mode 100644
index 0000000000..5ef1e1177a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgby-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgby-h.vf
new file mode 100644
index 0000000000..73ca4976ec
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgby-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgby-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgby-v.vf
new file mode 100644
index 0000000000..3926c0d66a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgby-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbz-h.vf
new file mode 100644
index 0000000000..95095da553
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgbz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgbz-v.vf
new file mode 100644
index 0000000000..1a16053a88
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgbz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgej-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgej-h.vf
new file mode 100644
index 0000000000..9b43d009ee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgej-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgej-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgej-v.vf
new file mode 100644
index 0000000000..ec29536dc5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgej-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgek-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgek-h.vf
new file mode 100644
index 0000000000..edb5b6d8e8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgek-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgek-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgek-v.vf
new file mode 100644
index 0000000000..1998f22a73
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgek-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgel-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgel-h.vf
new file mode 100644
index 0000000000..ed630b9289
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgel-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgel-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgel-v.vf
new file mode 100644
index 0000000000..38a04f5092
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgel-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgem-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgem-h.vf
new file mode 100644
index 0000000000..98d6ca60d8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgem-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgem-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgem-v.vf
new file mode 100644
index 0000000000..a0b1bdfe62
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgem-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgen-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgen-h.vf
new file mode 100644
index 0000000000..b13b6e7b45
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgen-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgen-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgen-v.vf
new file mode 100644
index 0000000000..3486db06ae
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgen-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeo-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeo-h.vf
new file mode 100644
index 0000000000..2629ebbeb0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeo-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeo-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeo-v.vf
new file mode 100644
index 0000000000..bbad1ca66c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeo-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgep-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgep-h.vf
new file mode 100644
index 0000000000..ed1a65e91d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgep-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgep-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgep-v.vf
new file mode 100644
index 0000000000..62be282271
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgep-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeq-h.vf
new file mode 100644
index 0000000000..648b0ffe81
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeq-v.vf
new file mode 100644
index 0000000000..33c6088a76
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjger-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjger-h.vf
new file mode 100644
index 0000000000..c71f89852b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjger-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjger-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjger-v.vf
new file mode 100644
index 0000000000..b5b315ae1a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjger-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjges-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjges-h.vf
new file mode 100644
index 0000000000..1da35b8cd9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjges-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjges-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjges-v.vf
new file mode 100644
index 0000000000..61d22f26e1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjges-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjget-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjget-h.vf
new file mode 100644
index 0000000000..f9bc854cc9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjget-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjget-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjget-v.vf
new file mode 100644
index 0000000000..7ed041d6f5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjget-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeu-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeu-h.vf
new file mode 100644
index 0000000000..98eb74d119
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeu-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgeu-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgeu-v.vf
new file mode 100644
index 0000000000..a3d2419d3d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgeu-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgev-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgev-h.vf
new file mode 100644
index 0000000000..501756b65c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgev-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgev-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgev-v.vf
new file mode 100644
index 0000000000..26aa43efb2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgev-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgex-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgex-h.vf
new file mode 100644
index 0000000000..b4bf7fc09c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgex-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgex-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgex-v.vf
new file mode 100644
index 0000000000..b10a7da8d6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgex-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgey-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgey-h.vf
new file mode 100644
index 0000000000..d7d7ee8da6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgey-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgey-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgey-v.vf
new file mode 100644
index 0000000000..520f1e890c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgey-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgez-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgez-h.vf
new file mode 100644
index 0000000000..56a01ad0aa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgez-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgez-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgez-v.vf
new file mode 100644
index 0000000000..ad4aab3fb4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgez-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrj-h.vf
new file mode 100644
index 0000000000..2456e34946
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrj-v.vf
new file mode 100644
index 0000000000..61234a1974
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrk-h.vf
new file mode 100644
index 0000000000..086c81fe48
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrk-v.vf
new file mode 100644
index 0000000000..67342255ce
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrl-h.vf
new file mode 100644
index 0000000000..41745590f7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrl-v.vf
new file mode 100644
index 0000000000..1823682232
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrm-h.vf
new file mode 100644
index 0000000000..be3b3b2246
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrm-v.vf
new file mode 100644
index 0000000000..db65e8ab6b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrn-h.vf
new file mode 100644
index 0000000000..c33c498616
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrn-v.vf
new file mode 100644
index 0000000000..bee2b88cf4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgro-h.vf
new file mode 100644
index 0000000000..c9942b2410
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgro-v.vf
new file mode 100644
index 0000000000..369595e62c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrp-h.vf
new file mode 100644
index 0000000000..75600661e0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrp-v.vf
new file mode 100644
index 0000000000..9ccb3bf54e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrq-h.vf
new file mode 100644
index 0000000000..17069260f2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrq-v.vf
new file mode 100644
index 0000000000..d46cf0515a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrr-h.vf
new file mode 100644
index 0000000000..ed47945a48
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrr-v.vf
new file mode 100644
index 0000000000..76aa91bc43
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrs-h.vf
new file mode 100644
index 0000000000..e09721d36c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrs-v.vf
new file mode 100644
index 0000000000..09f577cf64
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrt-h.vf
new file mode 100644
index 0000000000..d758acf060
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrt-v.vf
new file mode 100644
index 0000000000..1792e42ec6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgru-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgru-h.vf
new file mode 100644
index 0000000000..ae063a9cb1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgru-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgru-v.vf
new file mode 100644
index 0000000000..1b6ca7eda2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrv-h.vf
new file mode 100644
index 0000000000..d73615333b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrv-v.vf
new file mode 100644
index 0000000000..a2237aafb4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrx-h.vf
new file mode 100644
index 0000000000..c816958398
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrx-v.vf
new file mode 100644
index 0000000000..d9e230b55d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgry-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgry-h.vf
new file mode 100644
index 0000000000..6a0df6c138
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgry-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgry-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgry-v.vf
new file mode 100644
index 0000000000..ff1f2ff3aa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgry-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrz-h.vf
new file mode 100644
index 0000000000..68908f4c78
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjgrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjgrz-v.vf
new file mode 100644
index 0000000000..b8e50e9bb0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjgrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbj-h.vf
new file mode 100644
index 0000000000..3b0e2e4a33
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbj-v.vf
new file mode 100644
index 0000000000..0f2208ed50
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbk-h.vf
new file mode 100644
index 0000000000..eaedbded5d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbk-v.vf
new file mode 100644
index 0000000000..3ad21af46e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbl-h.vf
new file mode 100644
index 0000000000..84f4211b1f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbl-v.vf
new file mode 100644
index 0000000000..2a0df04f5f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbm-h.vf
new file mode 100644
index 0000000000..70f56deade
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbm-v.vf
new file mode 100644
index 0000000000..2106b60ad4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbn-h.vf
new file mode 100644
index 0000000000..6c5efede99
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbn-v.vf
new file mode 100644
index 0000000000..0c12904265
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbo-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbo-h.vf
new file mode 100644
index 0000000000..29134495a2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbo-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbo-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbo-v.vf
new file mode 100644
index 0000000000..8850f969c7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbo-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbp-h.vf
new file mode 100644
index 0000000000..cc47f3f218
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbp-v.vf
new file mode 100644
index 0000000000..c909f02f42
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbq-h.vf
new file mode 100644
index 0000000000..17c2e38fda
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbq-v.vf
new file mode 100644
index 0000000000..b334582107
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbr-h.vf
new file mode 100644
index 0000000000..bac3c6e5d4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbr-v.vf
new file mode 100644
index 0000000000..d60402a613
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbs-h.vf
new file mode 100644
index 0000000000..3b5c5a61c6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbs-v.vf
new file mode 100644
index 0000000000..e3f0c5bab7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbt-h.vf
new file mode 100644
index 0000000000..a3db32ddad
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbt-v.vf
new file mode 100644
index 0000000000..2bfef9545f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbu-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbu-h.vf
new file mode 100644
index 0000000000..8fe17d1511
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbu-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbu-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbu-v.vf
new file mode 100644
index 0000000000..3d7777ba76
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbu-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbv-h.vf
new file mode 100644
index 0000000000..fb741b4eee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbv-v.vf
new file mode 100644
index 0000000000..8133cdd30d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbx-h.vf
new file mode 100644
index 0000000000..1857510c43
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbx-v.vf
new file mode 100644
index 0000000000..a70b9f2cd4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmby-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmby-h.vf
new file mode 100644
index 0000000000..4ffefc5857
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmby-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmby-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmby-v.vf
new file mode 100644
index 0000000000..372b4c2442
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmby-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbz-h.vf
new file mode 100644
index 0000000000..dbd6587c13
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmbz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmbz-v.vf
new file mode 100644
index 0000000000..183234a760
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmbz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrj-h.vf
new file mode 100644
index 0000000000..93116ce704
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrj-v.vf
new file mode 100644
index 0000000000..97031da703
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrk-h.vf
new file mode 100644
index 0000000000..f3fda90dc8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrk-v.vf
new file mode 100644
index 0000000000..abf3c00eda
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrl-h.vf
new file mode 100644
index 0000000000..8f0597221b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrl-v.vf
new file mode 100644
index 0000000000..c7edc134f0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrm-h.vf
new file mode 100644
index 0000000000..e4d18b2c9c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrm-v.vf
new file mode 100644
index 0000000000..58b6a27c61
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrn-h.vf
new file mode 100644
index 0000000000..b9b6072939
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrn-v.vf
new file mode 100644
index 0000000000..fd1d665b2d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgro-h.vf
new file mode 100644
index 0000000000..b2148167a7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgro-v.vf
new file mode 100644
index 0000000000..ef0e9d7cfd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrp-h.vf
new file mode 100644
index 0000000000..30dadbc2c0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrp-v.vf
new file mode 100644
index 0000000000..d60aa41317
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrq-h.vf
new file mode 100644
index 0000000000..2855ba8749
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrq-v.vf
new file mode 100644
index 0000000000..91d70ae004
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrr-h.vf
new file mode 100644
index 0000000000..151fc728dd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrr-v.vf
new file mode 100644
index 0000000000..fa63768e54
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrs-h.vf
new file mode 100644
index 0000000000..4eb3d5984a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrs-v.vf
new file mode 100644
index 0000000000..76207cbf4c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrt-h.vf
new file mode 100644
index 0000000000..1a80ccab30
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrt-v.vf
new file mode 100644
index 0000000000..af88a94237
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgru-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgru-h.vf
new file mode 100644
index 0000000000..e040be6526
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgru-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgru-v.vf
new file mode 100644
index 0000000000..f5522cee4d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrv-h.vf
new file mode 100644
index 0000000000..5200c5bf48
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrv-v.vf
new file mode 100644
index 0000000000..bd9766a649
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrx-h.vf
new file mode 100644
index 0000000000..fb3e2d49cc
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrx-v.vf
new file mode 100644
index 0000000000..1d500a2188
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgry-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgry-h.vf
new file mode 100644
index 0000000000..8b21f263ed
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgry-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgry-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgry-v.vf
new file mode 100644
index 0000000000..fb6819db14
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgry-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrz-h.vf
new file mode 100644
index 0000000000..bb8422a8de
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmgrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmgrz-v.vf
new file mode 100644
index 0000000000..50477a8823
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmgrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlj-h.vf
new file mode 100644
index 0000000000..386d6c310a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlj-v.vf
new file mode 100644
index 0000000000..fa1de2cde5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlk-h.vf
new file mode 100644
index 0000000000..f64e8aa6aa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlk-v.vf
new file mode 100644
index 0000000000..dc5013611e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmll-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmll-h.vf
new file mode 100644
index 0000000000..77c76856ba
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmll-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmll-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmll-v.vf
new file mode 100644
index 0000000000..f808eb24ab
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmll-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlm-h.vf
new file mode 100644
index 0000000000..e17449a7f3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlm-v.vf
new file mode 100644
index 0000000000..2758d13fa8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmln-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmln-h.vf
new file mode 100644
index 0000000000..e915897a21
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmln-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmln-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmln-v.vf
new file mode 100644
index 0000000000..eab558da14
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmln-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlo-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlo-h.vf
new file mode 100644
index 0000000000..9b77ca19f3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlo-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlo-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlo-v.vf
new file mode 100644
index 0000000000..ef98b1df10
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlo-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlp-h.vf
new file mode 100644
index 0000000000..0070537fb6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlp-v.vf
new file mode 100644
index 0000000000..170e8f6310
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlq-h.vf
new file mode 100644
index 0000000000..8e23b3b2b3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlq-v.vf
new file mode 100644
index 0000000000..cfb1185a66
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlr-h.vf
new file mode 100644
index 0000000000..9da3bafde4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlr-v.vf
new file mode 100644
index 0000000000..bf6ff6cb6b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmls-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmls-h.vf
new file mode 100644
index 0000000000..73879598ee
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmls-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmls-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmls-v.vf
new file mode 100644
index 0000000000..a01e70e20f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmls-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlt-h.vf
new file mode 100644
index 0000000000..2611f77cc2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlt-v.vf
new file mode 100644
index 0000000000..7c89471e5e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlu-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlu-h.vf
new file mode 100644
index 0000000000..ff78022856
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlu-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlu-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlu-v.vf
new file mode 100644
index 0000000000..1cb7b6ad51
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlu-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlv-h.vf
new file mode 100644
index 0000000000..e0afc6336b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlv-v.vf
new file mode 100644
index 0000000000..c8156110d4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlx-h.vf
new file mode 100644
index 0000000000..ff57ddc4b1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlx-v.vf
new file mode 100644
index 0000000000..11af42833a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmly-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmly-h.vf
new file mode 100644
index 0000000000..a8a1f36f86
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmly-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmly-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmly-v.vf
new file mode 100644
index 0000000000..bb5d4ccaa5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmly-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlz-h.vf
new file mode 100644
index 0000000000..f940ad4c7c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmlz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmlz-v.vf
new file mode 100644
index 0000000000..f96215c78c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmlz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrj-h.vf
new file mode 100644
index 0000000000..61a2db2b03
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrj-v.vf
new file mode 100644
index 0000000000..717795c3fa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrk-h.vf
new file mode 100644
index 0000000000..50ba6797a7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrk-v.vf
new file mode 100644
index 0000000000..773a713435
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrl-h.vf
new file mode 100644
index 0000000000..461304b13e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrl-v.vf
new file mode 100644
index 0000000000..a38c13ab9f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrm-h.vf
new file mode 100644
index 0000000000..192f04f59a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrm-v.vf
new file mode 100644
index 0000000000..463a7d3a5d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrn-h.vf
new file mode 100644
index 0000000000..776f3c4ae0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrn-v.vf
new file mode 100644
index 0000000000..c9e245cf40
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmro-h.vf
new file mode 100644
index 0000000000..81acf68e44
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmro-v.vf
new file mode 100644
index 0000000000..48fd73289d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrp-h.vf
new file mode 100644
index 0000000000..a79cef5322
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrp-v.vf
new file mode 100644
index 0000000000..e9b52791ad
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrq-h.vf
new file mode 100644
index 0000000000..5cb21b8324
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrq-v.vf
new file mode 100644
index 0000000000..9eb07534b6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrr-h.vf
new file mode 100644
index 0000000000..eefa93df41
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrr-v.vf
new file mode 100644
index 0000000000..90fa62670d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrs-h.vf
new file mode 100644
index 0000000000..a0d0daf897
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrs-v.vf
new file mode 100644
index 0000000000..c61c8ac763
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrt-h.vf
new file mode 100644
index 0000000000..d34272c41d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrt-v.vf
new file mode 100644
index 0000000000..b1bc281f4f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmru-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmru-h.vf
new file mode 100644
index 0000000000..f0c6467a58
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmru-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmru-v.vf
new file mode 100644
index 0000000000..40f6d638be
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrv-h.vf
new file mode 100644
index 0000000000..51de2fe52e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrv-v.vf
new file mode 100644
index 0000000000..d4a05dcfe2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrx-h.vf
new file mode 100644
index 0000000000..2d9b3722fe
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrx-v.vf
new file mode 100644
index 0000000000..8c96ba52de
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmry-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmry-h.vf
new file mode 100644
index 0000000000..5c6320bb07
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmry-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmry-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmry-v.vf
new file mode 100644
index 0000000000..2587061965
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmry-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrz-h.vf
new file mode 100644
index 0000000000..f2597b5a25
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfjmrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfjmrz-v.vf
new file mode 100644
index 0000000000..f1fb6ed7cd
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfjmrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrj-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrj-h.vf
new file mode 100644
index 0000000000..61a2db2b03
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrj-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrj-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrj-v.vf
new file mode 100644
index 0000000000..717795c3fa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrj-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrk-h.vf
new file mode 100644
index 0000000000..7b2a2935c8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrk-v.vf
new file mode 100644
index 0000000000..dfb85d1ac7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrl-h.vf
new file mode 100644
index 0000000000..75cceec250
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrl-v.vf
new file mode 100644
index 0000000000..f518cef397
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrm-h.vf
new file mode 100644
index 0000000000..15ba968db7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrm-v.vf
new file mode 100644
index 0000000000..702fefb577
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrn-h.vf
new file mode 100644
index 0000000000..6fb29d9cc5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrn-v.vf
new file mode 100644
index 0000000000..0a832b421f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmro-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmro-h.vf
new file mode 100644
index 0000000000..67b5aa4d9b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmro-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmro-v.vf
new file mode 100644
index 0000000000..9bb466dcf6
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrp-h.vf
new file mode 100644
index 0000000000..5c730d75b0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrp-v.vf
new file mode 100644
index 0000000000..1fafb3eff7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrq-h.vf
new file mode 100644
index 0000000000..cee3d0c7e2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrq-v.vf
new file mode 100644
index 0000000000..aba15b1aea
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrr-h.vf
new file mode 100644
index 0000000000..a3166f3552
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrr-v.vf
new file mode 100644
index 0000000000..2220a0ced1
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrs-h.vf
new file mode 100644
index 0000000000..b136918ae4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrs-v.vf
new file mode 100644
index 0000000000..d6ab67cfe8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrt-h.vf
new file mode 100644
index 0000000000..c65e3ec576
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrt-v.vf
new file mode 100644
index 0000000000..c60a162e82
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmru-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmru-h.vf
new file mode 100644
index 0000000000..50cfb26565
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmru-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmru-v.vf
new file mode 100644
index 0000000000..f3fbe2eefb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrv-h.vf
new file mode 100644
index 0000000000..288ae7bb12
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrv-v.vf
new file mode 100644
index 0000000000..385502dfa0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrw-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrw-h.vf
new file mode 100644
index 0000000000..1b3039506b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrw-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrw-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrw-v.vf
new file mode 100644
index 0000000000..e5756dc04c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrw-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrx-h.vf
new file mode 100644
index 0000000000..278038671e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrx-v.vf
new file mode 100644
index 0000000000..294e5b8ec9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmry-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmry-h.vf
new file mode 100644
index 0000000000..5c6320bb07
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmry-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmry-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmry-v.vf
new file mode 100644
index 0000000000..2587061965
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmry-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utfmrz-h.vf
new file mode 100644
index 0000000000..775b1dc773
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utfmrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utfmrz-v.vf
new file mode 100644
index 0000000000..e57b8c613e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utfmrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrk-h.vf
new file mode 100644
index 0000000000..a3c5534c6e
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrk-v.vf
new file mode 100644
index 0000000000..fa19815a4b
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrl-h.vf
new file mode 100644
index 0000000000..808d156c34
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrl-v.vf
new file mode 100644
index 0000000000..2d4c8ad4a8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrm-h.vf
new file mode 100644
index 0000000000..aa74c9178c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrm-v.vf
new file mode 100644
index 0000000000..6477bf5f5d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrn-h.vf
new file mode 100644
index 0000000000..33b0e83dc5
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrn-v.vf
new file mode 100644
index 0000000000..073b20a586
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgro-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgro-h.vf
new file mode 100644
index 0000000000..ea56080e76
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgro-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgro-v.vf
new file mode 100644
index 0000000000..9d9f50b86c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrp-h.vf
new file mode 100644
index 0000000000..400c487b72
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrp-v.vf
new file mode 100644
index 0000000000..ea23e18ab4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrq-h.vf
new file mode 100644
index 0000000000..d4223aa931
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrq-v.vf
new file mode 100644
index 0000000000..249180409d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrr-h.vf
new file mode 100644
index 0000000000..f832cf0e31
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrr-v.vf
new file mode 100644
index 0000000000..0345d797bb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrs-h.vf
new file mode 100644
index 0000000000..bbf5a324dc
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrs-v.vf
new file mode 100644
index 0000000000..1019051d7d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrt-h.vf
new file mode 100644
index 0000000000..60455696b2
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrt-v.vf
new file mode 100644
index 0000000000..b0fd36856a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgru-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgru-h.vf
new file mode 100644
index 0000000000..e45f908c7d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgru-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgru-v.vf
new file mode 100644
index 0000000000..7b09604b7a
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrv-h.vf
new file mode 100644
index 0000000000..5bb5596c2d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrv-v.vf
new file mode 100644
index 0000000000..b133bb5fd4
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrw-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrw-h.vf
new file mode 100644
index 0000000000..c52e0b77ca
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrw-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrw-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrw-v.vf
new file mode 100644
index 0000000000..87cc1d3d16
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrw-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrx-h.vf
new file mode 100644
index 0000000000..0bc9f48ada
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrx-v.vf
new file mode 100644
index 0000000000..8ef612046d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utftgrz-h.vf
new file mode 100644
index 0000000000..159366182c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftgrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utftgrz-v.vf
new file mode 100644
index 0000000000..cc4358afb3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftgrz-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrk-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrk-h.vf
new file mode 100644
index 0000000000..8674e250a3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrk-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrk-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrk-v.vf
new file mode 100644
index 0000000000..1327b4937f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrk-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrl-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrl-h.vf
new file mode 100644
index 0000000000..08724bf4fb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrl-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrl-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrl-v.vf
new file mode 100644
index 0000000000..9242a7ca80
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrl-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrm-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrm-h.vf
new file mode 100644
index 0000000000..09e589b844
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrm-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrm-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrm-v.vf
new file mode 100644
index 0000000000..de4ea21924
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrm-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrn-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrn-h.vf
new file mode 100644
index 0000000000..cf4f1d07ba
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrn-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrn-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrn-v.vf
new file mode 100644
index 0000000000..8fbc651fab
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrn-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmro-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmro-h.vf
new file mode 100644
index 0000000000..e832ea1fe0
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmro-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmro-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmro-v.vf
new file mode 100644
index 0000000000..7535439734
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmro-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrp-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrp-h.vf
new file mode 100644
index 0000000000..6807bd69b3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrp-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrp-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrp-v.vf
new file mode 100644
index 0000000000..398601919f
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrp-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrq-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrq-h.vf
new file mode 100644
index 0000000000..7b1b59c714
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrq-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrq-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrq-v.vf
new file mode 100644
index 0000000000..ec4156df9d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrq-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrr-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrr-h.vf
new file mode 100644
index 0000000000..89663f7bc3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrr-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrr-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrr-v.vf
new file mode 100644
index 0000000000..8fccd64cbe
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrr-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrs-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrs-h.vf
new file mode 100644
index 0000000000..2ba4679a82
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrs-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrs-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrs-v.vf
new file mode 100644
index 0000000000..3bfaf150aa
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrs-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrt-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrt-h.vf
new file mode 100644
index 0000000000..987d1ce1fb
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrt-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrt-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrt-v.vf
new file mode 100644
index 0000000000..e84ead070c
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrt-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmru-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmru-h.vf
new file mode 100644
index 0000000000..ddb5e7ff64
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmru-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmru-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmru-v.vf
new file mode 100644
index 0000000000..162f259a16
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmru-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrv-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrv-h.vf
new file mode 100644
index 0000000000..eed779dfb7
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrv-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrv-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrv-v.vf
new file mode 100644
index 0000000000..a377088396
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrv-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrw-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrw-h.vf
new file mode 100644
index 0000000000..3b225cfbe3
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrw-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrw-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrw-v.vf
new file mode 100644
index 0000000000..31ebcf6940
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrw-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrx-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrx-h.vf
new file mode 100644
index 0000000000..772cabe508
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrx-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrx-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrx-v.vf
new file mode 100644
index 0000000000..ffce0b0994
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrx-v.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrz-h.vf b/language/japanese/japanese-otf-uptex/vf/utftmrz-h.vf
new file mode 100644
index 0000000000..7954ad021d
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrz-h.vf
Binary files differ
diff --git a/language/japanese/japanese-otf-uptex/vf/utftmrz-v.vf b/language/japanese/japanese-otf-uptex/vf/utftmrz-v.vf
new file mode 100644
index 0000000000..ffbfc14dc9
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/vf/utftmrz-v.vf
Binary files differ