diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-11 23:49:47 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-11 23:49:47 +0000 |
commit | 2f4fdf541dc04813bd2c8e2f3fad9a2ae66b71a3 (patch) | |
tree | 8a7953deed6e0f2035d658c473dd6bb1eb6c1468 /Master/texmf-dist/source/latex/CJK/contrib | |
parent | 802dd52e36f5dfdf39b9565798a01ac525ff5e48 (diff) |
trunk/Master/texmf-dist/source/latex/CJK
git-svn-id: svn://tug.org/texlive/trunk@118 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/CJK/contrib')
5 files changed, 882 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada new file mode 100755 index 00000000000..acaded60a4a --- /dev/null +++ b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada @@ -0,0 +1,63 @@ +# This script fixes the Wadalab fonts which have been created with the +# `makefont' script of the CJK package version 4.5.1 or earlier. +# +# It converts all PFB files in the current directory. + +for i in *.pfb; do + echo $i + mv $i $i.old + cat $i.old | \ + t1disasm | \ + awk ' + { + sub(/001\.001/, "001.002") + + if (/%%Creation/) { + print "%%CreationDate: 2003-Feb-07" + next + } + + if (/0 -160 rmoveto/ && last_is_hsbw) { + last_is_hsbw = 0 + next + } + + if (/hsbw/) { + last_is_hsbw = 1 + waiting_for_Xmoveto = 1 + } + else + last_is_hsbw = 0 + + if (waiting_for_Xmoveto) { + if (/rmoveto/) { + printf "\t%d %d rmoveto\n", $1, $2 - 160 + waiting_for_Xmoveto = 0 + next + } + else if (/vmoveto/) { + printf "\t%d vmoveto\n", $1 - 160 + waiting_for_Xmoveto = 0 + next + } + else if (/hmoveto/) { + printf "\t%d %d rmoveto\n", $1, -160 + waiting_for_Xmoveto = 0 + next + } + } + + if (/moveto/) + print "\tclosepath" + + if (/hstem/) { + printf "\t%d %d hstem\n", $1 - 160, $2 + next + } + + print + } + ' | \ + t1asm > $i + rm $i.old +done diff --git a/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada2.pl b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada2.pl new file mode 100644 index 00000000000..9c4a818da3d --- /dev/null +++ b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/fixwada2.pl @@ -0,0 +1,225 @@ +#! /usr/bin/perl -w +# +# This script fixes the Wadalab fonts which have been created with the +# `makefont' script version 1.0 (from CJK 4.6.0), or which have been updated +# with the `fixwada' script. +# +# . Make all glyph names compliant to the Adobe Glyph List (AGL) to +# get proper ToUnicode mappings in PDF documents. +# +# . Fix the encoding vector in the PFBs to contain only glyphs which +# actually have an outline. +# +# . Update the version number and creation date. +# +# . Fix a typo in the original fonts (`UniqueId' -> `UniqueID'). +# +# The files `JIS0208.TXT' and `JIS0212.TXT' from the `OBSOLETE' directory in +# the `MAPPINGS' tree on ftp.unicode.org are necessary for running this +# script. It also reads the file `DNP.sfd' which gives the relationship +# between JIS X 0208 (and JIS X 0212) in EUC encoding and wadalab's DNP font +# encoding. Finally, the programs `t1asm' and `t1disasm' must be available +# (and in the path). +# +# Call the script as +# +# perl fixwada2.pl wadalab_namestem [JIS0208|JIS0212] +# +# Example: +# +# perl fixwada2.pl dmj JIS0208 +# +# `fixwada2' reads all PFB and AFM files from the given wadalab font +# family and replaces them with new versions. + +use strict; + +my $prog = $0; +$prog =~ s@.*/@@; + +if ($#ARGV != 1) { + die("usage: $prog wadalab_namestem [JIS0208|JIS0212]\n"); +} + +my $namestem = $ARGV[0]; +my $encoding = $ARGV[1]; +my $encfile; +my $doshift; + + +if ("\U$encoding" eq "JIS0208") { + $encfile = "JIS0208.TXT"; + $doshift = 1; +} +elsif ("\U$encoding" eq "JIS0212") { + $encfile = "JIS0212.TXT"; + $doshift = 0; +} +else { + die("$prog: unknown encoding\n"); +} + + +# Read `DNP.sfd'. + +my %sfd; +my @subfonts; + +print("Reading \`DNP.sfd'...\n"); + +open(DNP, "DNP.sfd") +|| die("$prog: can't open \`DNP.sfd': $!\n"); + +# This loop doesn't handle the complete syntax of SFD files yet. +while (<DNP>) { + chop; + my @field = split(" "); + next if ($#field < 0); + next if ($field[0] =~ /^#/); + + my $suffix = $field[0]; + push(@subfonts, $suffix); + + shift(@field); + my $index = 0; + + while (@field) { + if ($field[0] =~ /(.*):$/) { + $index = $1; + } + elsif ($field[0] =~ /(0x[0-9A-Fa-f]+)_(0x[0-9A-Fa-f]+)/) { + foreach my $i (hex($1) .. hex($2)) { + $sfd{$suffix . "c" . sprintf("%02X", $index)} = $i; + $index++; + } + } + shift(@field); + } +} + + +# Read encoding file. + +print("Reading \`$encfile'...\n"); + +my %jisx; + +open(JISX, $encfile) +|| die("$prog: can't open \`$encfile': $!\n"); + +while (<JISX>) { + chop; + my @field = split(" "); + next if ($#field < 0); + next if ($field[0] =~ /^#/); + + if ($doshift) { + shift(@field); + } + + my $unicode = $field[1]; + $unicode =~ s/0x//; + my $value = hex($field[0]) + 0x8080; + $jisx{$value} = $unicode; +} + + +# Process AFM files. + +foreach my $afm (@subfonts) { + my $filename = "$namestem$afm.afm"; + print("Processing \`$filename'...\n"); + + if (!-f $filename) { + print("$prog: \`$filename' doesn't exist\n"); + next; + } + + rename($filename, "$filename.old"); + + open(INFILE, "$filename.old") + || die("$prog: can't open \`$filename.old': $!\n"); + open(OUTFILE, ">", "$filename") + || die("$prog: can't open \`$filename': $!\n"); + + while (<INFILE>) { + # Replace the `cXX' entries with correct `uniXXXX' glyph names. + s/ N (.*?) ;/ N uni$jisx{$sfd{$afm . $1}} ;/; + + # Update version number. + s/001\.001/001.004/; + + print(OUTFILE $_); + } + + close(INFILE); + close(OUTFILE); + + unlink("$filename.old"); +} + + +# Process PFB files. + +foreach my $pfb (@subfonts) { + my $arg; + my $filename = "$namestem$pfb.pfb"; + print("Processing \`$filename'...\n"); + + if (!-f $filename) { + print("$prog: \`$filename' doesn't exist\n"); + next; + } + + rename($filename, "$filename.old"); + + $arg = "t1disasm < $filename.old > $filename.disasm.old"; + system("$arg") == 0 + || die("$prog: calling \`$arg' failed: $?"); + + open(INFILE, "$filename.disasm.old") + || die("$prog: can't open \`$filename.disasm.old': $!\n"); + open(OUTFILE, ">", "$filename.disasm") + || die("$prog: can't open \`$filename.disasm': $!\n"); + + while (<INFILE>) { + # Replace the `cXX' entries with correct `uniXXXX' glyph names + # (or `.notdef' if there isn't one). + if (m@/(c.*?) @) { + my $replacement; + if (defined ($sfd{$pfb . $1}) + && defined ($jisx{$sfd{$pfb . $1}})) { + $replacement = "uni$jisx{$sfd{$pfb . $1}}"; + } + else { + $replacement = ".notdef"; + } + s@/(c.*?) @/$replacement @; + } + + # Fix a typo in original fonts. + s/UniqueId/UniqueID/; + + # Update version number. + s/001\.002/001.004/; + + # Update creation date. + s/2003-Feb-07/2005-Jul-29/; + + print(OUTFILE $_); + } + + close(INFILE); + close(OUTFILE); + + $arg = "t1asm < $filename.disasm > $filename"; + system("$arg") == 0 + || die("$prog: calling \`$arg' failed: $?"); + + unlink("$filename.disasm.old", "$filename.disasm"); + unlink("$filename.old"); +} + +print("Done.\n"); + +# eof diff --git a/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makefont b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makefont new file mode 100755 index 00000000000..7c70ef0c1ce --- /dev/null +++ b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makefont @@ -0,0 +1,91 @@ +#!/bin/sh +# +# Version 1.0 +# +# This script transforms Wadalab PFA and AFM files created by the +# wftodm program into PFB and TFM files. All files in the current +# directory and its subdirectories are converted. +# +# Additionally, it normalizes the font matrix so that the subfonts work +# with pdfTeX; for convenience, it also inserts `closepath' commands to +# end subpaths in glyphs. +# +# Note that an older version of this script (without a version number) has +# some flaws; you should either regenerate all Wadalab subfonts or use the +# `fixwada' script to fix PFB fonts which have already been created with +# this older version. +# +# The programs t1asm, t1disasm, and afm2tfm must be in the path. + +for f in `find . -name '*.pfa' -print`; do + echo processing $f + name=`basename $f .pfa` + t1disasm < $name.pfa > $name.old + + cat $name.old | \ + awk ' + { + sub(/001\.001/, "001.002") + sub(/\[.001 0 0 .001 0 -0.16\]/, "[.001 0 0 .001 0 0]") + sub(/\[0 0 1000 1000\]/, "[0 -160 1000 840]") + + if (/%%Creation/) { + print "%%CreationDate: 2003-Feb-07" + next + } + + if (/hsbw/) + waiting_for_Xmoveto = 1 + + if (waiting_for_Xmoveto) { + if (/rmoveto/) { + printf "\t%d %d rmoveto\n", $1, $2 - 160 + waiting_for_Xmoveto = 0 + next + } + if (/vmoveto/) { + printf "\t%d vmoveto\n", $1 - 160 + waiting_for_Xmoveto = 0 + next + } + if (/hmoveto/) { + printf "\t%d %d rmoveto\n", $1, -160 + waiting_for_Xmoveto = 0 + next + } + } + + if (/moveto/) + print "\tclosepath" + + if (/hstem/) { + printf "\t%d %d hstem\n", $1 - 160, $2 + next + } + + print + } + ' > $name.asm + rm $name.old + + t1asm < $name.asm > $name.pfb + rm $name.asm +done + +for f in `find . -name '*.afm' -print`; do + echo processing $f + name=`basename $f .afm` + mv $name.afm $name.old + + cat $name.old | \ + sed -e " + s/FontBBox 0 0 1000 1000/FontBBox 0 -160 1000 840/ + s/B 0 0 1000 1000/B 0 -160 1000 840/ + " > $name.afm + + rm $name.old + + afm2tfm $name.afm &> /dev/null +done + +# EOF diff --git a/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makeuniwada.pl b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makeuniwada.pl new file mode 100644 index 00000000000..fa8c205f3c8 --- /dev/null +++ b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/makeuniwada.pl @@ -0,0 +1,316 @@ +#! /usr/bin/perl -w +# +# This script creates virtual subfonts in Unicode encoding for Wadalab +# subfonts. It can merge a JIS X 0208 and JIS X 0212 family into a single +# set of Unicode subfonts. +# +# As prerequisites, it needs the files `JIS0208.TXT' and `JIS0212.TXT' from +# the `OBSOLETE' directory in the `MAPPINGS' tree on ftp.unicode.org. It +# also needs the file `DNP.sfd' which gives the relationship between JIS X +# 0208 (and JIS X 0212) in EUC encoding and wadalab's DNP font encoding. +# The program `vptovf' must be available (and in the path). +# +# Call the script as +# +# perl makeuniwada.pl namestem1 [namestem2] uni_namestem +# +# `namestem1' is the font in JIS X 0208 encoding. The optional `namestem2' +# argument is the font in JIS X 0212, and `uni_namestem' holds the prefix +# for the Unicode subfonts. `makeuniwada.pl' reads all AFM files from the +# given wadalab font families. +# +# Example: +# +# perl makeuniwada.pl dmj mc2j udmj +# +# This call mixes the mincho-0-12 (dmj) with mincho-1-8 (mc2j) families. + +use strict; + +my $prog = $0; +$prog =~ s@.*/@@; + +if ($#ARGV < 1 || $#ARGV > 2) { + die("usage: $prog namestem1 [namestem2] uni_namestem\n"); +} + +my $namestem1; +my $namestem2; +my $two_encodings = 0; +my @args = @ARGV; + +$namestem1 = $ARGV[0]; +if ($#ARGV == 2) { + $namestem2 = $ARGV[1]; + $two_encodings = 1; + shift; +} +my $uninamestem = $ARGV[1]; + + +# Read `DNP.sfd'. + +my %sfd; +my @subfonts; + +read_sfdfile("DNP.sfd", \%sfd, \@subfonts); + + +# Read encoding files. +# +# The files `JIS0208.TXT' and `JIS0212.TXT' are from the `OBSOLETE' +# directory in the `MAPPINGS' tree on ftp.unicode.org. + +my %jisx0208; +my %jisx0212; + +read_encfile("JIS0208.TXT", \%jisx0208, 1); +if ($two_encodings) { + read_encfile("JIS0212.TXT", \%jisx0212, 0); +} + + +# Read AFM files. + +my @unicode; + +foreach my $sub (@subfonts) { + my $afmname = "$namestem1$sub.afm"; + + if (-f $afmname) { + read_afmfile($afmname, \@unicode, \%sfd, \%jisx0208, $sub); + } +} +if ($two_encodings) { + foreach my $sub (@subfonts) { + my $afmname = "$namestem2$sub.afm"; + + if (-f $afmname) { + read_afmfile($afmname, \@unicode, \%sfd, \%jisx0212, $sub); + } + } +} + + +# Write VPL files. + +my $index = 0; +foreach my $i (0 .. 255) { + my @entries; + + foreach my $j (0 .. 255) { + if (defined ($unicode[$index])) { + push(@entries, "$j $unicode[$index]"); + } + $index++; + } + + if ($#entries >= 0) { + write_vplfile($uninamestem . sprintf("%02x.vpl", $i), \@entries); + } +} + + +# Generate VF and TFM files, then remove the VPL files. + +my @vplfiles = glob("$uninamestem*.vpl"); +foreach my $vplfile (@vplfiles) { + print("Processing \`$vplfile'...\n"); + my $arg = "vptovf $vplfile"; + system($arg) == 0 + || die("$prog: calling \`$arg' failed: $?");; + print("Removing \`$vplfile'...\n"); + unlink($vplfile); +} + + +# Read an SFD file. +# +# $1: Name of the SFD file. +# $2: Reference to the target hash file, mapping from the subfont index +# to the character code. The format of the hash key is the +# concatenation of the subfont suffix, a space, and the index. +# $3: Reference to a target array which holds the subfont suffixes. + +sub read_sfdfile { + my ($sfdfile, $sfdhash, $sfdarray) = @_; + + print("Reading subfont definition file \`$sfdfile'...\n"); + + open(SFD, $sfdfile) + || die("$prog: can't open \`$sfdfile': $!\n"); + + # This loop doesn't handle the complete syntax of SFD files yet. + while (<SFD>) { + chop; + my @field = split(" "); + next if ($#field < 0); + next if ($field[0] =~ /^#/); + + my $suffix = $field[0]; + push(@{$sfdarray}, $suffix); + + shift(@field); + my $index = 0; + + while (@field) { + if ($field[0] =~ /(.*):$/) { + $index = $1; + } + elsif ($field[0] =~ /(0x[0-9A-Fa-f]+)_(0x[0-9A-Fa-f]+)/) { + foreach my $i (hex($1) .. hex($2)) { + $sfdhash->{"$suffix $index"} = $i; + $index++; + } + } + shift(@field); + } + } + close(SFD); +} + + +# Read encoding file. +# +# $1: Name of the encoding file. +# $2: Reference to the target hash file, mapping from the charset +# to Unicode. +# $3: Set to 1 if the needed mapping data is not in field 1 and 2, but in +# field 2 and 3. + +sub read_encfile { + my ($encfile, $enchash, $doshift) = @_; + + print("Reading encoding file \`$encfile'...\n"); + + open(ENC, $encfile) + || die("$prog: can't open \`$encfile': $!\n"); + + while (<ENC>) { + chop; + my @field = split(" "); + next if ($#field < 0); + next if ($field[0] =~ /^#/); + + if ($doshift) { + shift(@field); + } + + my $unicode = $field[1]; + $unicode =~ s/0x//; + my $value = hex($field[0]) + 0x8080; + $enchash->{$value} = hex($unicode); + } + close(ENC); +} + + +# Read AFM file. +# +# $1: Name of the AFM file. +# $2: Reference to the target array which maps from Unicode to the string +# "<subfont name> <subfont index> <width> <height> <depth>". +# $3: Reference to the SFD hash (as extracted by `read_sfdfile'). +# $4: Reference to the encoding hash (as extracted by `read_encfile'). +# $5: Suffix. + +sub read_afmfile { + my ($afmfile, $unicarray, $sfdhash, $enchash, $suffix) = @_; + + print("Reading metric file \`$afmfile'...\n"); + + open(AFM, $afmfile) + || die("$prog: can't open \`$afmfile': $!\n"); + + $afmfile =~ s/\.[^.]*$//; + while (<AFM>) { + if (/^C (\d+) ;/) { + my $key = "$suffix $1"; + my $value = $sfdhash->{$key}; + my $unicvalue = $enchash->{$value}; + my $s = "$afmfile $1"; + + # Add advance width. + / WX (.*?) ;/; + $s .= " $1"; + + # Add glyph height and depth. + / B .*? (.*?) .*? (.*?) ;/; + $s .= " $1 $2"; + + $unicarray->[$unicvalue] = $s; + } + } + close(AFM); +} + + +# Write VPL file. +# +# $1: Name of the VPL file. +# $2: Reference to list which holds the font entries. An entry has the +# form `<idx> <subfont> <subfont_idx> <adv_width> <height> <depth>'. + +sub write_vplfile { + my ($vplfile, $glypharray) = @_; + + my %subfonts; + my $subcount = 0; + + foreach my $entry (@{$glypharray}) { + my @field = split(" ", $entry); + my $subfont = $field[1]; + if (!defined ($subfonts{$subfont})) { + $subfonts{$subfont} = $subcount; + $subcount++; + } + } + + print("Writing virtual property list file \`$vplfile'...\n"); + + open(VPL, ">", $vplfile) + || die("$prog: can't open \`$vplfile': $!\n"); + my $oldfh = select(VPL); + + print("(VTITLE Created by \`$prog " . join(" ", @args) . "')\n"); + print("(FAMILY TEX-\U$uninamestem\E)\n"); + print("(CODINGSCHEME DNPUNICODE)\n"); + print("(FONTDIMEN\n"); + print(" (SPACE R 0.5)\n"); + print(" (XHEIGHT R 0.4)\n"); + print(" (QUAD R 1)\n"); + print(" )\n"); + + foreach my $subfont + (sort { $subfonts{$a} <=> $subfonts{$b} } keys %subfonts) { + print("(MAPFONT D $subfonts{$subfont}\n"); + print(" (FONTNAME $subfont)\n"); + print(" )\n"); + } + + foreach my $entry (@{$glypharray}) { + my @field = split(" ", $entry); + my $index = $field[0]; + my $subnumber = $subfonts{$field[1]}; + my $subindex = $field[2]; + my $adv_width = $field[3] / 1000.0; + my $depth = $field[4] / -1000.0; + my $height = $field[5] / 1000.0; + + print("(CHARACTER D $index\n"); + print(" (CHARWD R $adv_width)\n"); + print(" (CHARHT R $height)\n"); + print(" (CHARDP R $depth)\n"); + print(" (MAP\n"); + print(" (SELECTFONT D $subnumber)\n"); + print(" (SETCHAR D $subindex)\n"); + print(" )\n"); + print(" )\n"); + } + + close(VPL); + select($oldfh); +} + + +# eof diff --git a/Master/texmf-dist/source/latex/CJK/contrib/wadalab/wadalab.map b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/wadalab.map new file mode 100644 index 00000000000..dd008d525fa --- /dev/null +++ b/Master/texmf-dist/source/latex/CJK/contrib/wadalab/wadalab.map @@ -0,0 +1,187 @@ + +% Wadalab Japanese fonts + +dgjgreek dgjgreek <dgjgreek.pfb +dgjhira dgjhira <dgjhira.pfb +dgjkata dgjkata <dgjkata.pfb +dgjkeisen dgjkeisen <dgjkeisen.pfb +dgjroma dgjroma <dgjroma.pfb +dgjrussian dgjrussian <dgjrussian.pfb +dgjsy dgjsy <dgjsy.pfb +dgjka dgjka <dgjka.pfb +dgjkb dgjkb <dgjkb.pfb +dgjkc dgjkc <dgjkc.pfb +dgjkd dgjkd <dgjkd.pfb +dgjke dgjke <dgjke.pfb +dgjkf dgjkf <dgjkf.pfb +dgjkg dgjkg <dgjkg.pfb +dgjkh dgjkh <dgjkh.pfb +dgjki dgjki <dgjki.pfb +dgjkj dgjkj <dgjkj.pfb +dgjkk dgjkk <dgjkk.pfb +dgjkl dgjkl <dgjkl.pfb +dgjkm dgjkm <dgjkm.pfb +dgjkn dgjkn <dgjkn.pfb +dgjko dgjko <dgjko.pfb +dgjkp dgjkp <dgjkp.pfb +dgjkq dgjkq <dgjkq.pfb +dgjkr dgjkr <dgjkr.pfb +dgjks dgjks <dgjks.pfb +dgjkt dgjkt <dgjkt.pfb +dgjku dgjku <dgjku.pfb +dgjkv dgjkv <dgjkv.pfb +dgjkw dgjkw <dgjkw.pfb +dgjkx dgjkx <dgjkx.pfb +dgjky dgjky <dgjky.pfb +dgjkz dgjkz <dgjkz.pfb + +dmjgreek dmjgreek <dmjgreek.pfb +dmjhira dmjhira <dmjhira.pfb +dmjkata dmjkata <dmjkata.pfb +dmjkeisen dmjkeisen <dmjkeisen.pfb +dmjroma dmjroma <dmjroma.pfb +dmjrussian dmjrussian <dmjrussian.pfb +dmjsy dmjsy <dmjsy.pfb +dmjka dmjka <dmjka.pfb +dmjkb dmjkb <dmjkb.pfb +dmjkc dmjkc <dmjkc.pfb +dmjkd dmjkd <dmjkd.pfb +dmjke dmjke <dmjke.pfb +dmjkf dmjkf <dmjkf.pfb +dmjkg dmjkg <dmjkg.pfb +dmjkh dmjkh <dmjkh.pfb +dmjki dmjki <dmjki.pfb +dmjkj dmjkj <dmjkj.pfb +dmjkk dmjkk <dmjkk.pfb +dmjkl dmjkl <dmjkl.pfb +dmjkm dmjkm <dmjkm.pfb +dmjkn dmjkn <dmjkn.pfb +dmjko dmjko <dmjko.pfb +dmjkp dmjkp <dmjkp.pfb +dmjkq dmjkq <dmjkq.pfb +dmjkr dmjkr <dmjkr.pfb +dmjks dmjks <dmjks.pfb +dmjkt dmjkt <dmjkt.pfb +dmjku dmjku <dmjku.pfb +dmjkv dmjkv <dmjkv.pfb +dmjkw dmjkw <dmjkw.pfb +dmjkx dmjkx <dmjkx.pfb +dmjky dmjky <dmjky.pfb +dmjkz dmjkz <dmjkz.pfb + +mcjgreek mcjgreek <mcjgreek.pfb +mcjhira mcjhira <mcjhira.pfb +mcjkata mcjkata <mcjkata.pfb +mcjkeisen mcjkeisen <mcjkeisen.pfb +mcjroma mcjroma <mcjroma.pfb +mcjrussian mcjrussian <mcjrussian.pfb +mcjsy mcjsy <mcjsy.pfb +mcjka mcjka <mcjka.pfb +mcjkb mcjkb <mcjkb.pfb +mcjkc mcjkc <mcjkc.pfb +mcjkd mcjkd <mcjkd.pfb +mcjke mcjke <mcjke.pfb +mcjkf mcjkf <mcjkf.pfb +mcjkg mcjkg <mcjkg.pfb +mcjkh mcjkh <mcjkh.pfb +mcjki mcjki <mcjki.pfb +mcjkj mcjkj <mcjkj.pfb +mcjkk mcjkk <mcjkk.pfb +mcjkl mcjkl <mcjkl.pfb +mcjkm mcjkm <mcjkm.pfb +mcjkn mcjkn <mcjkn.pfb +mcjko mcjko <mcjko.pfb +mcjkp mcjkp <mcjkp.pfb +mcjkq mcjkq <mcjkq.pfb +mcjkr mcjkr <mcjkr.pfb +mcjks mcjks <mcjks.pfb +mcjkt mcjkt <mcjkt.pfb +mcjku mcjku <mcjku.pfb +mcjkv mcjkv <mcjkv.pfb +mcjkw mcjkw <mcjkw.pfb +mcjkx mcjkx <mcjkx.pfb +mcjky mcjky <mcjky.pfb +mcjkz mcjkz <mcjkz.pfb + +mrjgreek mrjgreek <mrjgreek.pfb +mrjhira mrjhira <mrjhira.pfb +mrjkata mrjkata <mrjkata.pfb +mrjkeisen mrjkeisen <mrjkeisen.pfb +mrjroma mrjroma <mrjroma.pfb +mrjrussian mrjrussian <mrjrussian.pfb +mrjsy mrjsy <mrjsy.pfb +mrjka mrjka <mrjka.pfb +mrjkb mrjkb <mrjkb.pfb +mrjkc mrjkc <mrjkc.pfb +mrjkd mrjkd <mrjkd.pfb +mrjke mrjke <mrjke.pfb +mrjkf mrjkf <mrjkf.pfb +mrjkg mrjkg <mrjkg.pfb +mrjkh mrjkh <mrjkh.pfb +mrjki mrjki <mrjki.pfb +mrjkj mrjkj <mrjkj.pfb +mrjkk mrjkk <mrjkk.pfb +mrjkl mrjkl <mrjkl.pfb +mrjkm mrjkm <mrjkm.pfb +mrjkn mrjkn <mrjkn.pfb +mrjko mrjko <mrjko.pfb +mrjkp mrjkp <mrjkp.pfb +mrjkq mrjkq <mrjkq.pfb +mrjkr mrjkr <mrjkr.pfb +mrjks mrjks <mrjks.pfb +mrjkt mrjkt <mrjkt.pfb +mrjku mrjku <mrjku.pfb +mrjkv mrjkv <mrjkv.pfb +mrjkw mrjkw <mrjkw.pfb +mrjkx mrjkx <mrjkx.pfb +mrjky mrjky <mrjky.pfb +mrjkz mrjkz <mrjkz.pfb + +mc2jka mc2jka <mc2jka.pfb +mc2jkb mc2jkb <mc2jkb.pfb +mc2jkc mc2jkc <mc2jkc.pfb +mc2jkd mc2jkd <mc2jkd.pfb +mc2jke mc2jke <mc2jke.pfb +mc2jkf mc2jkf <mc2jkf.pfb +mc2jkg mc2jkg <mc2jkg.pfb +mc2jkh mc2jkh <mc2jkh.pfb +mc2jki mc2jki <mc2jki.pfb +mc2jkj mc2jkj <mc2jkj.pfb +mc2jkk mc2jkk <mc2jkk.pfb +mc2jkl mc2jkl <mc2jkl.pfb +mc2jkm mc2jkm <mc2jkm.pfb +mc2jkn mc2jkn <mc2jkn.pfb +mc2jko mc2jko <mc2jko.pfb +mc2jkp mc2jkp <mc2jkp.pfb +mc2jkq mc2jkq <mc2jkq.pfb +mc2jkr mc2jkr <mc2jkr.pfb +mc2jks mc2jks <mc2jks.pfb +mc2jkt mc2jkt <mc2jkt.pfb +mc2jku mc2jku <mc2jku.pfb +mc2jkv mc2jkv <mc2jkv.pfb +mc2jkw mc2jkw <mc2jkw.pfb + +mr2jka mr2jka <mr2jka.pfb +mr2jkb mr2jkb <mr2jkb.pfb +mr2jkc mr2jkc <mr2jkc.pfb +mr2jkd mr2jkd <mr2jkd.pfb +mr2jke mr2jke <mr2jke.pfb +mr2jkf mr2jkf <mr2jkf.pfb +mr2jkg mr2jkg <mr2jkg.pfb +mr2jkh mr2jkh <mr2jkh.pfb +mr2jki mr2jki <mr2jki.pfb +mr2jkj mr2jkj <mr2jkj.pfb +mr2jkk mr2jkk <mr2jkk.pfb +mr2jkl mr2jkl <mr2jkl.pfb +mr2jkm mr2jkm <mr2jkm.pfb +mr2jkn mr2jkn <mr2jkn.pfb +mr2jko mr2jko <mr2jko.pfb +mr2jkp mr2jkp <mr2jkp.pfb +mr2jkq mr2jkq <mr2jkq.pfb +mr2jkr mr2jkr <mr2jkr.pfb +mr2jks mr2jks <mr2jks.pfb +mr2jkt mr2jkt <mr2jkt.pfb +mr2jku mr2jku <mr2jku.pfb +mr2jkv mr2jkv <mr2jkv.pfb +mr2jkw mr2jkw <mr2jkw.pfb + |