#include<bits/stdc++.h>
using namespace std;
int x[7],p[7],k[7];
int ans;
int fs(int x,int y)
{
int ans=x;
for(int i=1;i<=y;i++)
{
ans*=ans;
}
return ans;
}
int n,m;
int cnt;
void dfs(int s)
{
if(s<=n)
{
for(int i=1;i<=m;i++)
{
x[s]=i;
dfs(s+1);
}
}
else{
for(int i=1;i<=n;i++)
cnt+=k[i]*fs(x[i],p[i]);
if(cnt==0)
ans++;
else cnt=0;
return;
}
return;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
cin>>k[i]>>p[i];
dfs(1);
cout<<ans;
return 0;
}
Orz