\newcommand{\tengwarelfica}[1][1.0]{%
  % font parameters
  \def\teng@usefont{Elfica32 }%
  \FPmul{\teng@defaultmag}{1100}{#1}%
  % struts
  \def\teng@strutn{\rule[-0.10ex]{\teng@strutwidth}{1.35ex}\kern-\teng@strutwidth}%
  \def\teng@strutt{\rule[-0.10ex]{\teng@strutwidth}{2.30ex}\kern-\teng@strutwidth}%
  \def\teng@strutb{\rule[-1.35ex]{\teng@strutwidth}{2.60ex}\kern-\teng@strutwidth}%
  % space
  \def\teng@space{0.8ex plus 0.4ex minus 0.267ex}%
  % all characters and kernings
  \def\teng@empty                 {\teng@strutn\hphantom{\char020}\teng@setkern{0.5}{0.5}{0}{0}{0}{0}{0}}%
  \def\teng@tinco                 {\teng@strutb\char000\teng@setkern{0.2}{0.2}{0}{0}{-0.1}{0}{0}}%
  \def\teng@parma                 {\teng@strutb\char001\teng@setkern{0.3}{0.3}{0}{0}{-0.1}{0}{0}}%
  \def\teng@calma                 {\teng@strutb\char002\teng@setkern{0.35}{0.55}{0}{0}{-0.03}{-0.02}{2}}%
  \def\teng@quesse                {\teng@strutb\char003\teng@setkern{0.35}{0.55}{0}{0}{0}{0}{2}}%
  \def\teng@ando                  {\teng@strutb\char004\teng@setkern{0.6}{0.7}{0}{0}{-0.2}{0}{0}}%
  \def\teng@umbar                 {\teng@strutb\char005\teng@setkern{0.7}{0.8}{0}{0}{-0.1}{0}{0}}%
  \def\teng@anga                  {\teng@strutb\char006\teng@setkern{0.8}{0.95}{0}{0}{-0.03}{-0.02}{2}}%
  \def\teng@ungwe                 {\teng@strutb\char007\teng@setkern{0.8}{0.95}{0}{0}{0}{0}{2}}%
  \def\teng@thuule                {\teng@strutt\char008\teng@setkern{0.2}{0.35}{0}{0}{-0.1}{0}{0}}%
  \def\teng@formen                {\teng@strutt\char009\teng@setkern{0.3}{0.45}{0}{0}{-0.1}{0}{0}}%
  \def\teng@aha                   {\teng@strutt\char010\teng@setkern{0.6}{0.6}{0}{0}{0}{0}{1}}%
  \def\teng@hwesta                {\teng@strutt\char011\teng@setkern{0.6}{0.6}{0}{0}{0}{0}{2}}%
  \def\teng@anto                  {\teng@strutt\char012\teng@setkern{0.6}{0.7}{0}{0}{-0.2}{0}{0}}%
  \def\teng@ampa                  {\teng@strutt\char013\teng@setkern{0.7}{0.8}{0}{0}{-0.1}{0}{0}}%
  \def\teng@anca                  {\teng@strutt\char014\teng@setkern{0.85}{0.95}{0}{0}{0}{0}{1}}%
  \def\teng@unque                 {\teng@strutt\char015\teng@setkern{0.85}{0.95}{0}{0}{0}{0}{2}}%
  \def\teng@nuumen                {\teng@strutn\char016\teng@setkern{0.6}{0.7}{0}{0}{-0.1}{0}{0}}%
  \def\teng@malta                 {\teng@strutn\char017\teng@setkern{0.7}{0.8}{0}{0}{-0.1}{0}{0}}%
  \def\teng@noldo                 {\teng@strutn\char018\teng@setkern{0.8}{0.95}{0}{0}{0.04}{-0.02}{2}}%
  \def\teng@nwalme                {\teng@strutn\char019\teng@setkern{0.8}{0.95}{0}{0}{0}{0}{2}}%
  \def\teng@oore                  {\teng@strutn\char020\teng@setkern{0.2}{0.35}{0}{0}{-0.2}{0}{0}}%
  \def\teng@vala                  {\teng@strutn\char021\teng@setkern{0.3}{0.45}{0}{0}{-0.1}{0}{0}}%
  \def\teng@anna                  {\teng@strutn\char022\teng@setkern{0.35}{0.6}{0}{0}{0.04}{-0.02}{2}}%
  \def\teng@vilya                 {\teng@strutn\char023\teng@setkern{0.35}{0.6}{0}{0}{0}{0}{2}}%
  \def\teng@extendedtinco         {\teng@strut \char040\teng@setkern{0.2}{0.2}{0}{0}{-0.1}{0}{0}}%
  \def\teng@extendedparma         {\teng@strut \char041\teng@setkern{0.3}{0.3}{0}{0}{-0.1}{0}{0}}%
  \def\teng@extendedcalma         {\teng@strut \char042\teng@setkern{0.6}{0.55}{0}{0}{0}{0}{1}}%
  \def\teng@extendedquesse        {\teng@strut \char043\teng@setkern{0.6}{0.55}{0}{0}{0}{0}{2}}%
  \def\teng@extendedando          {\teng@strut \char044\teng@setkern{0.6}{0.7}{0}{0}{-0.2}{0}{0}}%
  \def\teng@extendedumbar         {\teng@strut \char045\teng@setkern{0.7}{0.8}{0}{0}{-0.1}{0}{0}}%
  \def\teng@extendedanga          {\teng@strut \char046\teng@setkern{0.85}{0.95}{0}{0}{0}{0}{1}}%
  \def\teng@extendedungwe         {\teng@strut \char047\teng@setkern{0.85}{0.95}{0}{0}{0}{0}{2}}%
  \def\teng@roomen                {\teng@strutb\char024\teng@setkern{0.35}{0.15}{0.1}{0}{0.1}{0}{0}}%
  \def\teng@arda                  {\teng@strutb\char025\teng@setkern{0.35}{0.15}{0.1}{0}{0.1}{0}{0}}%
  \def\teng@lambe                 {\teng@strutb\char026\teng@setkern{0.45}{0.6}{-0.6}{0}{0}{0}{1}}%
  \def\teng@alda                  {\teng@strutb\char027\teng@setkern{0.45}{0.6}{-0.2}{0}{0}{-0.2}{1}}%
  \def\teng@roomenalt             {\teng@roomen}%
  \def\teng@ardaalt               {\teng@arda}%
  \def\teng@lambealt              {\teng@lambe}%
 %\def\teng@lambealt              {\teng@strutb\char189\teng@setkern{1.15}{1.2}{-0.65}{0}{0}{0}{1}}%
  \def\teng@silme                 {\teng@strutt\char028\teng@setkern{-0.35}{0.3}{0}{-0.25}{-0.1}{0}{0}}%
  \def\teng@silmenuquerna         {\teng@strutb\char029\teng@setkern{0.25}{0.75}{-0.4}{0}{-0.25}{0}{0}}%
  \def\teng@esse                  {\teng@strut \char030\teng@setkern{-0.35}{0.3}{0.85}{-0.25}{-0.2}{0}{0}}%
  \def\teng@essenuquerna          {\teng@strutb\char031\teng@setkern{0.4}{0.65}{0.1}{0}{-0.25}{0}{0}}%
  \def\teng@silmealt              {\teng@strutt\char132\teng@setkern{0.2}{0.45}{0}{0}{0}{0}{0}}%
  \def\teng@silmenuquernaalt      {\teng@strutb\char133\teng@setkern{0.45}{0.7}{0}{0}{-0.4}{0}{0}}%
  \def\teng@essealt               {\teng@strutt\char134\teng@setkern{0.1}{0.4}{0}{0}{-0.1}{0}{0}}%
  \def\teng@essenuquernaalt       {\teng@strutb\char135\teng@setkern{0.25}{0.75}{0.4}{0}{-0.25}{0}{0}}%
  \def\teng@hyarmen               {\teng@strutt\char032\teng@setkern{0}{0.45}{0}{0}{-0.4}{0}{0}}%
  \def\teng@halla                 {\teng@strutt\char036\teng@setkern{-0.15}{-0.05}{0.2}{0.9}{-0.3}{0}{0}}%
  \def\teng@hwestasindarinwa      {\teng@strutt\char033\teng@setkern{0.75}{0.7}{0}{0}{-0.4}{0}{0}}%
  \def\teng@yanta                 {\teng@strutn\char034\teng@setkern{0.35}{0.45}{0}{0}{-0.25}{0}{0}}%
  \def\teng@uure                  {\teng@strutn\char035\teng@setkern{0.25}{0.35}{0}{0}{-0.1}{0}{0}}%
  \def\teng@osse                  {\teng@strutn\char050\teng@setkern{0.15}{0.25}{0}{0}{-0.25}{0}{0}}%
  \def\teng@telco                 {\teng@strutn\char037\teng@setkern{0}{0}{0.2}{0}{-0.05}{-0.15}{3}}%
  \def\teng@aara                  {\teng@strutb\char038\teng@setkern{0}{0.05}{1.3}{0}{0}{-0.15}{3}}%
  \def\teng@lefthook              {\char093}%
  \def\teng@righthook             {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char092}\teng@setkern{-0.3}{0}{0.5}{-0.7}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@righthookI            {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char152}\teng@setkern{-0.1}{0}{0.5}{-0.7}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@righthookII           {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char156}\teng@setkern{0.05}{0}{0}{0}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@righthookIII          {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\raisebox{0.1ex}{\char152}}\teng@setkern{-0.1}{0}{0.5}{-0.7}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@curlyhook             {\kern-0.05ex\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char159}\teng@setkern{0}{0.15}{0.35}{-0.25}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@curlyhookI            {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char160}\teng@setkern{0.05}{0.15}{0.45}{-0.45}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@curlyhookII           {\teng@righthookII}%
  \def\teng@curlyhookIII          {\teng@righthookIII}%
  \def\teng@uphook                {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char155}\teng@setkern{0}{0.1}{0}{-0.2}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@uphookI               {\kern-0.1ex\teng@uphook}%
  \def\teng@uphookII              {\kern-\teng@kernhook ex\raisebox{\teng@raisehook ex}{\char158}\teng@setkern{-0.1}{-0.1}{-0.5}{0.3}{0}{\teng@raisehook}{0}\teng@addkern{0}{0}{-\teng@raisehook}{\teng@raisehook}{0}{0}}%
  \def\teng@uphookIII             {\teng@uphookII}%
  \def\teng@tehta@dot             {\teng@place@tehta{\kern 0.90ex\raisebox{-0.10ex}{\char068}}}%
  \def\teng@tehta@acute           {\teng@place@tehta{\kern 1.00ex\char070}}%
  \def\teng@tehta@threedots       {\teng@place@tehta{\kern 1.10ex\char064}}%
  \def\teng@tehta@rightcurl       {\teng@place@tehta{\kern 1.10ex\char072}}%
  \def\teng@tehta@leftcurl        {\teng@place@tehta{\kern 1.00ex\char074}}%
  \def\teng@tehta@caron           {\teng@place@tehta{\kern 0.90ex\char079}}%
  \def\teng@tehta@breve           {\teng@tehta@caron}%
  \def\teng@tehta@doubleacute     {\teng@place@tehta{\kern 1.00ex\char070\kern0.35ex\char070}}%
  \def\teng@tehta@doublerightcurl {\teng@place@tehta{\kern 1.10ex\char073}}%
  \def\teng@tehta@doubleleftcurl  {\teng@place@tehta{\kern 1.00ex\char074\kern0.35ex\char074}}%
  \def\teng@tehta@twodots         {\teng@place@tehta{\kern 1.00ex\raisebox{-0.10ex}{\char066}}}%
  \def\teng@tehta@tilde           {\teng@place@tehta{\kern 0.30ex\raisebox{-0.30ex}{\char078}}\teng@addkern{0}{0}{0}{0.45}{0}{0}}%
  \def\teng@tehta@lefttilde       {\teng@place@tehta{\kern-0.50ex\raisebox{-0.30ex}{\char078}}\teng@addkern{-0.45}{0}{0}{0}{0}{0}}%
  \def\teng@tehta@nasalizer       {\teng@place@tehta{\kern 0.90ex\raisebox{ 0.05ex}{\char076}}\teng@addkern{0}{0}{0}{0.4}{0}{0}}%
  \def\teng@tehta@doubler         {\teng@place@tehtabelow{\kern0.85ex\raisebox{-0.10ex}{\char077}}\teng@addkern{0}{0.1}{0.4}{0}{0}{0}}%
  \def\teng@tehta@dotbelow        {\teng@place@tehtabelow{\kern1.05ex\raisebox{ 0.20ex}{\char069}}}%
  \def\teng@tehta@twodotsbelow    {\teng@place@tehtabelow{\kern1.05ex\raisebox{ 0.20ex}{\char067}}\teng@addkern{0}{0.05}{0.45}{0}{0}{0}}%
  \def\teng@tehta@lefttwodotsbelow{\teng@place@tehtabelow{\kern0.30ex\raisebox{ 0.20ex}{\char067}}\teng@addkern{0}{-0.35}{0}{0}{0}{0}}%
  \def\teng@tehta@threedotsbelow  {\teng@place@tehtabelow{\kern1.10ex\raisebox{ 0.05ex}{\char065}}}%
  \def\teng@tehta@doubleacutebelow{\teng@place@tehtabelow{\kern1.10ex\raisebox{ 0.10ex}{\char087}}}%
  \def\teng@tehta@rightcurlbelow  {\teng@place@tehtabelow{\kern1.05ex\raisebox{ 0.10ex}{\char088}}}%
  \def\teng@tehta@leftcurlbelow   {\teng@place@tehtabelow{\kern1.50ex\raisebox{ 0.10ex}{\char090}}}%
  \def\teng@tehta@verticalbarbelow{\teng@place@tehtabelow{\kern1.15ex\raisebox{ 0.10ex}{\char086}}}%
  \def\teng@zero                  {\teng@strutn\char048\teng@setkern{0.2}{0.35}{0}{0}{0}{0}{0}}%
  \def\teng@one                   {\teng@strutn\char051\teng@setkern{0.3}{0.35}{0}{0}{0}{0}{0}}%
  \def\teng@two                   {\teng@strutn\char098\teng@setkern{0.55}{0.6}{0}{0}{0}{0}{0}}%
  \def\teng@three                 {\teng@strutn\char099\teng@setkern{0.9}{0.85}{0}{0}{0}{0}{0}}%
  \def\teng@four                  {\teng@strut \char100\teng@setkern{0.15}{0.3}{0}{0}{0}{0}{0}}%
  \def\teng@five                  {\teng@strut \char101\teng@setkern{0.4}{0.65}{0}{0}{0}{0}{0}}%
  \def\teng@six                   {\teng@strut \char102\teng@setkern{0.7}{0.95}{0}{0}{0}{0}{0}}%
  \def\teng@seven                 {\teng@strut \char103\teng@setkern{0.4}{0.3}{0}{0}{0}{0}{0}}%
  \def\teng@eight                 {\teng@strut \char104\teng@setkern{0.25}{0.3}{0}{0}{0}{0}{0}}%
  \def\teng@nine                  {\teng@strut \char105\teng@setkern{0.7}{0.8}{0}{0}{0}{0}{0}}%
  \def\teng@ten                   {\teng@strutt\char106\teng@setkern{0.7}{0.4}{0}{0}{0}{0}{0}}%
  \def\teng@eleven                {\teng@strut \char107\teng@setkern{0.7}{0.2}{0.2}{0}{0}{0}{0}}%
  \def\teng@tehta@decimal         {\teng@place@tehta     {\kern0.90ex\raisebox{-0.1ex}{\char068}}}%
  \def\teng@tehta@duodecimal      {\teng@place@tehtabelow{\kern1.05ex\raisebox{ 0.2ex}{\char069}}}%
  \def\teng@tehta@leastsignificant{\teng@place@tehtabelow{\kern1.70ex\raisebox{ 0.2ex}{\char110}}}%
  \def\teng@centereddot           {\teng@strutn\char080\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@colon                 {\teng@strutn\char081\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@threeverticaldots     {\teng@strutn\char128\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@centeredtilde         {\teng@strutn\char084\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@centeredlongtilde     {\teng@strutn\char085\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@exclamation           {\teng@strutt\char082\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@question              {\teng@strutt\char083\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@parenthesis           {\teng@strut \char129\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanquestion         {\teng@strutt\char240\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanexclamation      {\teng@strutt\char241\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanperiod           {\teng@strutn\char242\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romancomma            {\teng@strutn\char243\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romansemicolon        {\teng@strutn\char244\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanquoteleft        {\teng@strutt\char245\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanquoteright       {\teng@strutt\char246\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romandblquoteleft     {\teng@strutt\char247\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romandblquoteright    {\teng@strutt\char248\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanparenleft        {\teng@strut \char249\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \def\teng@romanparenright       {\teng@strut \char250\teng@setkern{0}{0}{0}{0}{0}{0}{0}}%
  \teng@setfont%
}
