{cpy(x,z,p);  return; }
{__cpy(x,z,p);  return; }
static void add_magnitudes(const mp_no *x, const mp_no *y, mp_no *z, int p) {  int i,j,k;  EZ = EX;  i=p;    j=p+ EY - EX;    k=p+1;  if (j<1)     {cpy(x,z,p);  return; }  else   Z[k] = ZERO;  for (; j>0; i--,j--) {    Z[k] += X[i] + Y[j];    if (Z[k] >= RADIX) {      Z[k]  -= RADIX;      Z[--k] = ONE; }    else      Z[--k] = ZERO;  }  for (; i>0; i--) {    Z[k] += X[i];    if (Z[k] >= RADIX) {      Z[k]  -= RADIX;      Z[--k] = ONE; }    else      Z[--k] = ZERO;  }  if (Z[1] == ZERO) {    for (i=1; i<=p; i++)    Z[i] = Z[i+1]; }  else   EZ += ONE;}