#include <bits/stdc++.h>
const int mod=998244353;
#define Rint register int
#define C(n,m) (n<m?0:1ll*fac[n]*invfac[n-m]%mod*invfac[m]%mod)
using namespace std;
int T,n,m,p,k;
int ksm(int a,int k){
	int ans=1;
	for(;k;k>>=1,a=1ll*a*a%mod) if(k&1) ans=1ll*ans*a%mod;
	return ans;
}
int a[410],b[410],suma=0,sumb=0,C[410][410],f[410][410]; 
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]),suma+=a[i],sumb+=b[i];
	for(int i=0;i<=sumb;i++){
		C[i][0]=1;
		for(int j=1;j<=i;j++) C[i][j]=(C[i-1][j]+C[i-1][j-1])%mod;
	}
	f[0][0]=1;
	int inv=ksm(suma,mod-2);
	for(int i=1;i<=n;i++) for(int j=suma;j>=a[i];j--) for(int k=sumb;k>=0;k--){
		for(int l=0,pow_t=1,tmp=1ll*a[i]*inv%mod;l<=min(b[i]-1,k);l++){
			f[j][k]=(f[j][k]-1ll*f[j-a[i]][k-l]*C[k][l]%mod*pow_t%mod+mod)%mod;
			pow_t=1ll*pow_t*tmp%mod;
		}
	}
	int ans=0;
	for(int j=0;j<=suma;j++) for(int k=0;k<=sumb;k++) ans=(ans+1ll*f[j][k]*ksm(1ll*suma*ksm(j,mod-2)%mod,k+1))%mod;
	printf("%d\n",(mod-ans)%mod);
}