ctx->tos--;
BN_CTX_end(ctx);
int BN_mod_mul_reciprocal(BIGNUM *r, BIGNUM *x, BIGNUM *y, BN_RECP_CTX *recp,	     BN_CTX *ctx)	{	int ret=0;	BIGNUM *a;	a= &(ctx->bn[ctx->tos++]);	if (y != NULL)		{		if (x == y)			{ if (!BN_sqr(a,x,ctx)) goto err; }		else			{ if (!BN_mul(a,x,y,ctx)) goto err; }		}	else		a=x; /* Just do the mod */	BN_div_recp(NULL,r,a,recp,ctx);	ret=1;err:	ctx->tos--;	return(ret);	}