bn_check_top(r); bn_check_top(a);
int BN_lshift1(BIGNUM *r, const BIGNUM *a)	{	register BN_ULONG *ap,*rp,t,c;	int i;	if (r != a)		{		r->neg=a->neg;		if (bn_wexpand(r,a->top+1) == NULL) return(0);		r->top=a->top;		}	else		{		if (bn_wexpand(r,a->top+1) == NULL) return(0);		}	ap=a->d;	rp=r->d;	c=0;	for (i=0; i<a->top; i++)		{		t= *(ap++);		*(rp++)=((t<<1)|c)&BN_MASK2;		c=(t & BN_TBIT)?1:0;		}	if (c)		{		*rp=1;		r->top++;		}	bn_check_top(r);	return(1);	}