text: //-- Values and function for DNA -> Amino Acid translation
  
  #ifndef __TRANSLATE_H
  #define __TRANSLATE_H
  
  #include <cstdio>
  #include <cstring>
  
  long int Translate_DNA
  (char * A, char * tA, int Frame);
  
  // function to translate dna sequence to aminoacid sequence
  // uses esttrans' headers and algo
  // A as read in from gene.h Read_String
  // tA should be an empty string, malloced to atleast (len A / 3)
  // frame is 1,2,3,4,5,6
  // returns new (strlen(A+1)) or -1 on error
  // See end of file for source.
  
  #define BAD_PEP_CHAR	-1
  #define SKIP_PEP_CHAR	-2
  #define NUM_DNA_SYMBOLS	16
  #define DNA_A		 0
  #define DNA_C		 1
  #define DNA_G		 2
  #define DNA_TU		 3
  #define DNA_M		 4
  #define DNA_R		 5
  #define DNA_W		 6
  #define DNA_S		 7
  #define DNA_Y		 8
  #define DNA_K		 9
  #define DNA_V		10
  #define DNA_H		11
  #define DNA_D		12
  #define DNA_B		13
  #define DNA_XN		14
  #define DNA_dot		15
  
  #define AA_LEN		8192
  #define DNA_LEN		32768
  #define AA_LINE_LEN	60
  
  const int	compdna[NUM_DNA_SYMBOLS] = {
      DNA_TU,
      DNA_G,
      DNA_C,
      DNA_A,
      DNA_K,
      DNA_Y,
      DNA_W,
      DNA_S,
      DNA_R,
      DNA_M,
      DNA_B,
      DNA_D,
      DNA_H,
      DNA_V,
      DNA_XN,
      DNA_dot
  };
  
  const int	transdna[256] = {
      BAD_PEP_CHAR,	/*  0 NUL*/
      BAD_PEP_CHAR,	/*  1 SOH*/
      BAD_PEP_CHAR,	/*  2 STX*/
      BAD_PEP_CHAR,	/*  3 ETX*/
      BAD_PEP_CHAR,	/*  4 EOT*/
      BAD_PEP_CHAR,	/*  5 ENQ*/
      BAD_PEP_CHAR,	/*  6 ACK*/
      BAD_PEP_CHAR,	/*  7 BEL*/
      BAD_PEP_CHAR,	/*  8 BS */
      SKIP_PEP_CHAR,	/*  9 HT */
      SKIP_PEP_CHAR,	/* 10 NL */
      SKIP_PEP_CHAR,	/* 11 VT */
      SKIP_PEP_CHAR,	/* 12 NP */
      SKIP_PEP_CHAR,	/* 13 CR */
      BAD_PEP_CHAR,	/* 14 SO */
      BAD_PEP_CHAR,	/* 15 SI */
      BAD_PEP_CHAR,	/* 16 DLE*/
      BAD_PEP_CHAR,	/* 17 DC1*/
      BAD_PEP_CHAR,	/* 18 DC2*/
      BAD_PEP_CHAR,	/* 19 DC3*/
      BAD_PEP_CHAR,	/* 20 DC4*/
      BAD_PEP_CHAR,	/* 21 NAK*/
      BAD_PEP_CHAR,	/* 22 SYN*/
      BAD_PEP_CHAR,	/* 23 ETB*/
      BAD_PEP_CHAR,	/* 24 CAN*/
      BAD_PEP_CHAR,	/* 25 EM */
      BAD_PEP_CHAR,	/* 26 SUB*/
      BAD_PEP_CHAR,	/* 27 ESC*/
      BAD_PEP_CHAR,	/* 28 FS */
      BAD_PEP_CHAR,	/* 29 GS */
      BAD_PEP_CHAR,	/* 30 RS */
      BAD_PEP_CHAR,	/* 31 US */
      SKIP_PEP_CHAR,	/* 32 SP */
      BAD_PEP_CHAR,	/* 33  ! */
      BAD_PEP_CHAR,	/* 34  " */
      BAD_PEP_CHAR,	/* 35  # */
      BAD_PEP_CHAR,	/* 36  $ */
      BAD_PEP_CHAR,	/* 37  % */
      BAD_PEP_CHAR,	/* 38  & */
      BAD_PEP_CHAR,	/* 39  ' */
      BAD_PEP_CHAR,	/* 40  ( */
      BAD_PEP_CHAR,	/* 41  ) */
      BAD_PEP_CHAR,	/* 42  * */
      BAD_PEP_CHAR,	/* 43  + */
      BAD_PEP_CHAR,	/* 44  , */
      BAD_PEP_CHAR,	/* 45  - */
      DNA_dot,	/* 46  . */
      BAD_PEP_CHAR,	/* 47  / */
      BAD_PEP_CHAR,	/* 48  0 */
      BAD_PEP_CHAR,	/* 49  1 */
      BAD_PEP_CHAR,	/* 50  2 */
      BAD_PEP_CHAR,	/* 51  3 */
      BAD_PEP_CHAR,	/* 52  4 */
      BAD_PEP_CHAR,	/* 53  5 */
      BAD_PEP_CHAR,	/* 54  6 */
      BAD_PEP_CHAR,	/* 55  7 */
      BAD_PEP_CHAR,	/* 56  8 */
      BAD_PEP_CHAR,	/* 57  9 */
      BAD_PEP_CHAR,	/* 58  : */
      BAD_PEP_CHAR,	/* 59  ; */
      BAD_PEP_CHAR,	/* 60  < */
      BAD_PEP_CHAR,	/* 61  = */
      BAD_PEP_CHAR,	/* 62  > */
      BAD_PEP_CHAR,	/* 63  ? */
      BAD_PEP_CHAR,	/* 64  @ */
      DNA_A,		/* 65  A */
      DNA_B,		/* 66  B */
      DNA_C,		/* 67  C */
      DNA_D,		/* 68  D */
      BAD_PEP_CHAR,	/* 69  E */
      BAD_PEP_CHAR,	/* 70  F */
      DNA_G,		/* 71  G */
      DNA_H,		/* 72  H */
      BAD_PEP_CHAR,	/* 73  I */
      BAD_PEP_CHAR,	/* 74  J */
      DNA_K,		/* 75  K */
      BAD_PEP_CHAR,	/* 76  L */
      DNA_M,		/* 77  M */
      DNA_XN,		/* 78  N */
      BAD_PEP_CHAR,	/* 79  O */
      BAD_PEP_CHAR,	/* 80  P */
      BAD_PEP_CHAR,	/* 81  Q */
      DNA_R,		/* 82  R */
      DNA_S,		/* 83  S */
      DNA_TU,		/* 84  T */
      DNA_TU,		/* 85  U */
      DNA_V,		/* 86  V */
      DNA_W,		/* 87  W */
      DNA_XN,		/* 88  X */
      DNA_Y,		/* 89  Y */
      BAD_PEP_CHAR,	/* 90  Z */
      BAD_PEP_CHAR,	/* 91  [ */
      BAD_PEP_CHAR,	/* 92  \ */
      BAD_PEP_CHAR,	/* 93  ] */
      BAD_PEP_CHAR,	/* 94  ^ */
      BAD_PEP_CHAR,	/* 95  _ */
      BAD_PEP_CHAR,	/* 96  ` */
      DNA_A,		/* 97  a */
      DNA_B,		/* 98  b */
      DNA_C,		/* 99  c */
      DNA_D,		/*100  d */
      BAD_PEP_CHAR,	/*101  e */
      BAD_PEP_CHAR,	/*102  f */
      DNA_G,		/*103  g */
      DNA_H,		/*104  h */
      BAD_PEP_CHAR,	/*105  i */
      BAD_PEP_CHAR,	/*106  j */
      DNA_K,		/*107  k */
      BAD_PEP_CHAR,	/*108  l */
      DNA_M,		/*109  m */
      DNA_XN,		/*110  n */
      BAD_PEP_CHAR,	/*111  o */
      BAD_PEP_CHAR,	/*112  p */
      BAD_PEP_CHAR,	/*113  q */
      DNA_R,		/*114  r */
      DNA_S,		/*115  s */
      DNA_TU,		/*116  t */
      DNA_TU,		/*117  u */
      DNA_V,		/*118  v */
      DNA_W,		/*119  w */
      DNA_XN,		/*120  x */
      DNA_Y,		/*121  y */
      BAD_PEP_CHAR,	/*122  z */
      BAD_PEP_CHAR,	/*123  { */
      BAD_PEP_CHAR,	/*124  | */
      BAD_PEP_CHAR,	/*125  } */
      BAD_PEP_CHAR,	/*126  ~ */
      BAD_PEP_CHAR,	/*127 DEL*/
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR,
      BAD_PEP_CHAR
  };
  
  const char	universal[NUM_DNA_SYMBOLS * NUM_DNA_SYMBOLS * NUM_DNA_SYMBOLS] = {
      'K','N','K','N','X','K','X','X','N','X','X','X','X','X','X','X',
      'T','T','T','T','T','T','T','T','T','T','T','T','T','T','T','X',
      'R','S','R','S','X','R','X','X','S','X','X','X','X','X','X','X',
      'I','I','M','I','I','X','I','X','I','X','X','I','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'Q','H','Q','H','X','Q','X','X','H','X','X','X','X','X','X','X',
      'P','P','P','P','P','P','P','P','P','P','P','P','P','P','P','X',
      'R','R','R','R','R','R','R','R','R','R','R','R','R','R','R','X',
      'L','L','L','L','L','L','L','L','L','L','L','L','L','L','L','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'E','D','E','D','X','E','X','X','D','X','X','X','X','X','X','X',
      'A','A','A','A','A','A','A','A','A','A','A','A','A','A','A','X',
      'G','G','G','G','G','G','G','G','G','G','G','G','G','G','G','X',
      'V','V','V','V','V','V','V','V','V','V','V','V','V','V','V','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      '*','Y','*','Y','X','*','X','X','Y','X','X','X','X','X','X','X',
      'S','S','S','S','S','S','S','S','S','S','S','S','S','S','S','X',
      '*','C','W','C','X','X','X','X','C','X','X','X','X','X','X','X',
      'L','F','L','F','X','L','X','X','F','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      '*','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'R','X','R','X','X','R','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','B','X','B','X','X','X','X','B','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'Z','X','Z','X','X','Z','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'L','X','L','X','X','L','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X',
      'X','X','X','X','X','X','X','X','X','X','X','X','X','X','X','X'
  };
  
  #endif // #ifndef __TRANSLATE_H
  