var arabic_inited = false;
var akm = new Array ( 128 );

function arabic_init()
{
  if ( arabic_inited ) {
    return;
  }

  arabic_inited = true;

  // zero-out all entries first
  for ( i = 0; i < akm.length; i++ ) {
    akm[i] = 0;
  }

  // Uyghur Unicode character map
  akm[gac('a')] = gac('ش');
  akm[gac('A')] = gac('ِ');
  akm[gac('b')] = gac('ﻻ');
  akm[gac('B')] = gac('ﻵ');
  akm[gac('c')] = gac('ؤ');
  akm[gac('C')] = gac('}');
  akm[gac('d')] = gac('ي');
  akm[gac('D')] = gac(']');
  akm[gac('e')] = gac('ث');
  akm[gac('E')] = gac('ُ');
  akm[gac('f')] = gac('ب');
  akm[gac('F')] = gac('[');
  akm[gac('g')] = gac('ل');
  akm[gac('G')] = gac('ﻷ');
  akm[gac('h')] = gac('ا');
  akm[gac('H')] = gac('أ');
  akm[gac('i')] = gac('ه');
  akm[gac('I')] = gac('÷');
  akm[gac('j')] = gac('ت');
  akm[gac('J')] = gac('ـ');
  akm[gac('k')] = gac('ن');
  akm[gac('K')] = gac('،');
  akm[gac('l')] = gac('م');
  akm[gac('L')] = gac('/');
  akm[gac('m')] = gac('ة');
  akm[gac('M')] = gac("'");
  akm[gac('n')] = gac('ى');
  akm[gac('N')] = gac('آ');
  akm[gac('o')] = gac('خ');
  akm[gac('O')] = gac('×');
  akm[gac('p')] = gac('ح');
  akm[gac('P')] = gac('؛');
  akm[gac('q')] = gac('ض');
  akm[gac('Q')] = gac('َ');
  akm[gac('r')] = gac('ق');
  akm[gac('R')] = gac('ٌ');
  akm[gac('s')] = gac('س');
  akm[gac('S')] = gac('ٍ');
  akm[gac('t')] = gac('ف');
  akm[gac('T')] = gac('ﻹ'); // space filler character
  akm[gac('u')] = gac('ع');
  akm[gac('U')] = gac('`');
  akm[gac('v')] = gac('ر');
  akm[gac('V')] = gac('{');
  akm[gac('w')] = gac('ص');
  akm[gac('W')] = gac('ً');
  akm[gac('x')] = gac('ء');
  akm[gac('X')] = gac('ْ');
  akm[gac('y')] = gac('غ');
  akm[gac('Y')] = gac('إ');
  akm[gac('z')] = gac('ئ');
  akm[gac('Z')] = gac('~');
  akm[gac('`')] = gac('ذ');
  akm[gac('~')] = gac('ّ');

  for ( i = 0; i < akm.length; i++ ) {
    if ( akm[i] != 0 ) {
      var u = gac(gas(i).toUpperCase());
      if ( akm[u] == 0 ) {
        akm[u] = akm[i];
      }
    }
  }
  
  akm[gac(';')] = gac('ك');
  akm[gac('?')] = gac('؟');
  akm[gac(',')] = gac('و');
  akm[gac('<')] = gac(',');
  akm[gac('.')] = gac('ز');
  akm[gac('>')] = gac('.');
  akm[gac('{')] = gac('<');
  akm[gac('}')] = gac('>');
  akm[gac('[')] = gac('ج');
  akm[gac(']')] = gac('د');
  akm[gac('/')] = gac('ظ');
  akm[gac("'")] = gac('ط');
}

